Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
lighttpd [Le 01/09/2017, 21:47] – [PHP et MySQL] Modif pour PHP fabux | lighttpd [Le 29/04/2020, 09:56] (Version actuelle) – [Ruby] mod luigifab | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | ------ | ||
+ | {{ light_logo_170px.png}} | ||
+ | |||
+ | ====== Lighttpd : Un serveur web léger ====== | ||
+ | |||
+ | |||
+ | **Lighttpd** est un serveur web (//HTTP//) qui, de par sa légèreté, | ||
+ | |||
+ | Par rapport à Apache, il ne supporte pas les fichiers htaccess ou encore htpasswd. Ces 2 problèmes sont contournables si vous avez accès à la configuration de votre serveur. | ||
+ | |||
+ | Lighttpd se trouve dans le top 5 des serveurs les plus utilisés dans le monde. Cette page est là pour vous expliquer comment l' | ||
+ | |||
+ | ===== Installation ===== | ||
+ | |||
+ | Il suffit d' | ||
+ | |||
+ | ===== Configuration ===== | ||
+ | Tous les fichiers de configuration se trouvent dans **/ | ||
+ | |||
+ | ==== / | ||
+ | Voici ce que vous pouvez trouver dans ce répertoire. | ||
+ | lighttpd.conf conf-available conf-enabled | ||
+ | |||
+ | * Le fichier **lighttpd.conf** est le fichier de configuration principal à partir duquel les directives principales sont chargées. | ||
+ | * **conf-available** est un dossier qui contient les fichiers de configuration des différents modules. | ||
+ | * **conf-enabled** est un dossier | ||
+ | |||
+ | === Le fichier lighttpd.conf === | ||
+ | Le plus important est de configurer la directive suivante qui définit la racine de Lighttpd. | ||
+ | < | ||
+ | server.document-root | ||
+ | </ | ||
+ | Quelle que soit la modification faite dans le fichier de configuration, | ||
+ | < | ||
+ | |||
+ | **/ | ||
+ | |||
+ | ==Les modules== | ||
+ | |||
+ | La première partie du fichier consiste en l' | ||
+ | < | ||
+ | server.modules | ||
+ | " | ||
+ | " | ||
+ | ... | ||
+ | # " | ||
+ | # " | ||
+ | ) | ||
+ | </ | ||
+ | Il est possible de retrouver une [[http:// | ||
+ | |||
+ | Une documentation plus exhaustive sur les différentes directives de configuration sont disponibles [[http:// | ||
+ | |||
+ | |||
+ | ==== PHP ==== | ||
+ | |||
+ | après avoir installé [[:PHP]] , activer le module fastcgi en saisissant dans un [[: | ||
+ | < | ||
+ | | ||
+ | Depuis | ||
+ | < | ||
+ | | ||
+ | Puis rechargez la configuration de lighttpd: | ||
+ | < | ||
+ | |||
+ | Enfin, tester que le serveur prend bien en compte PHP (nb: si vous avez changé le chemin de // | ||
+ | < | ||
+ | sudo sh -c 'echo "<? | ||
+ | sudo chown -R www-data: | ||
+ | </ | ||
+ | Ensuite avec votre [[: | ||
+ | |||
+ | Lors du test ci-dessus si vous rencontrez une **erreur 403**, modifier le fichier **/ | ||
+ | < | ||
+ | |||
+ | <note tip>Si ça ne marche pas , sous Ubuntu [[:16.04]] modifier le fichier **/ | ||
+ | < | ||
+ | # http:// | ||
+ | |||
+ | ## Start an FastCGI server for php (needs the php7.0-cgi package) | ||
+ | fastcgi.server += ( " | ||
+ | (( | ||
+ | " | ||
+ | " | ||
+ | )) | ||
+ | ) | ||
+ | </ | ||
+ | Si besoin effacer les liens symboliques **10-fastcgi.conf** et **15-fastcgi-php.conf** créés dans **/ | ||
+ | |||
+ | Les lignes sont à adapter. Par exemple, pour PHP version 7.2 vous remplacerez les termes " | ||
+ | </ | ||
+ | |||
+ | ==== MySql ==== | ||
+ | FIXME Installez [[:Mysql]] | ||
+ | |||
+ | Il suffit d' | ||
+ | **[[apt> | ||
+ | Et éventuellement PHPMyAdmin : | ||
+ | **[[apt> | ||
+ | |||
+ | Lors de l' | ||
+ | Puis vous serez amenés à choisir un mot de passe pour l' | ||
+ | |||
+ | Après l' | ||
+ | < | ||
+ | sudo / | ||
+ | sudo / | ||
+ | </ | ||
+ | |||
+ | Si vous avez installé PHPMyAdmin, la base de données est alors accessible à l' | ||
+ | |||
+ | |||
+ | ==== Ruby ==== | ||
+ | |||
+ | <note warning> | ||
+ | |||
+ | Deux exemples de configuration pour Redmine, le premier avec fastcgi (qui ne fonctionne plus avec Redmine 2), le second avec thin (un second serveur). Prenez garde aux chemins utilisés dans ces exemples. | ||
+ | |||
+ | < | ||
+ | # avec fastcgi, mod_fastcgi | ||
+ | $HTTP[" | ||
+ | server.document-root = "/ | ||
+ | accesslog.filename | ||
+ | server.error-handler-404 = "/ | ||
+ | server.indexfiles = ( " | ||
+ | fastcgi.server += ( | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ), | ||
+ | " | ||
+ | ) | ||
+ | ) | ||
+ | ) | ||
+ | alias.url += ( "/ | ||
+ | }</ | ||
+ | |||
+ | < | ||
+ | # avec Thin, mod_proxy | ||
+ | $HTTP[" | ||
+ | server.document-root = "/ | ||
+ | accesslog.filename | ||
+ | $HTTP[" | ||
+ | proxy.balance = " | ||
+ | proxy.server | ||
+ | ( " | ||
+ | ( " | ||
+ | ( " | ||
+ | ( " | ||
+ | )) | ||
+ | } | ||
+ | alias.url += ( "/ | ||
+ | } | ||
+ | |||
+ | # / | ||
+ | --- | ||
+ | chdir: "/ | ||
+ | environment: | ||
+ | address: 0.0.0.0 | ||
+ | port: 3000 | ||
+ | servers: 4 | ||
+ | timeout: 30 | ||
+ | log: / | ||
+ | pid: / | ||
+ | max_conns: 1024 | ||
+ | max_persistent_conns: | ||
+ | require: [] | ||
+ | wait: 30 | ||
+ | daemonize: true | ||
+ | </ | ||
+ | ==== SSL ==== | ||
+ | |||
+ | Pour utiliser un certificat SSL, il faut au préalable [[: | ||
+ | |||
+ | Pour créer un certificat SSL auto-signé, | ||
+ | < | ||
+ | |||
+ | Une fois le certificat créé, il faut modifier la configuration du serveur pour qu'il accepte les connexions HTTPS sur le port 443. | ||
+ | \\ Pour ce faire, il faut [[: | ||
+ | < | ||
+ | ssl.engine = " | ||
+ | ssl.pemfile = "/ | ||
+ | |||
+ | Dernière étape, le redémarrage du serveur. | ||
+ | < | ||
+ | |||
+ | Ensuite rendez vous sur https:// | ||
+ | \\ Étant donné que le certificat SSL est auto-signé, | ||
+ | |||
+ | < | ||
+ | [[https:// | ||
+ | |||
+ | ===== Désinstallation ===== | ||
+ | |||
+ | Pour supprimer cette application, | ||
+ | |||
+ | ===== Voir aussi ===== | ||
+ | |||
+ | * **(en)** [[http:// | ||
+ | * **(fr)** [[http:// | ||
+ | * **(en)** [[http:// | ||
+ | * **(en)** [[https:// | ||
+ | |||
+ | ---- | ||
+ | |||
+ | // |