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 31/01/2013, 16:20] – [/etc/lighttpd] 193.51.46.17 | lighttpd [Le 11/09/2022, 11:35] (Version actuelle) – Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) moths-art | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| {{tag> | {{tag> | ||
| ------ | ------ | ||
| + | |||
| + | {{ light_logo_170px.png}} | ||
| ====== Lighttpd : Un serveur web léger ====== | ====== Lighttpd : Un serveur web léger ====== | ||
| - | |||
| - | {{ light_logo_170px.png}} | ||
| **Lighttpd** est un serveur web (//HTTP//) qui, de par sa légèreté, | **Lighttpd** est un serveur web (//HTTP//) qui, de par sa légèreté, | ||
| Ligne 15: | Ligne 15: | ||
| ===== Installation ===== | ===== Installation ===== | ||
| - | Il suffit d' | + | Il suffit d' |
| ===== Configuration ===== | ===== Configuration ===== | ||
| Tous les fichiers de configuration se trouvent dans **/ | Tous les fichiers de configuration se trouvent dans **/ | ||
| + | |||
| ==== / | ==== / | ||
| Voici ce que vous pouvez trouver dans ce répertoire. | Voici ce que vous pouvez trouver dans ce répertoire. | ||
| Ligne 25: | Ligne 26: | ||
| * Le fichier **lighttpd.conf** est le fichier de configuration principal à partir duquel les directives principales sont chargées. | * 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-available** est un dossier qui contient les fichiers de configuration des différents modules. | ||
| - | * **conf-enabled** est un dossier | + | * **conf-enabled** est un dossier |
| - | ===Le fichier lighttpd.conf=== | + | |
| + | === Le fichier lighttpd.conf === | ||
| Le plus important est de configurer la directive suivante qui définit la racine de Lighttpd. | Le plus important est de configurer la directive suivante qui définit la racine de Lighttpd. | ||
| - | <code> | + | <file> |
| server.document-root | server.document-root | ||
| - | </code> | + | </file> |
| - | Quelque | + | Quelle que soit la modification faite dans le fichier de configuration, |
| - | lighttpd -t -f / | + | < |
| + | |||
| + | **/ | ||
| - | **/ | ||
| ==Les modules== | ==Les modules== | ||
| - | La première partie du fichier consiste en l' | + | |
| - | <code> | + | La première partie du fichier consiste en l' |
| + | <file> | ||
| server.modules | server.modules | ||
| " | " | ||
| Ligne 45: | Ligne 49: | ||
| # " | # " | ||
| ) | ) | ||
| - | </code> | + | </file> |
| - | Il est possible de retrouver une documentation détaillée des différents modules sur le wiki officiel de Lighttpd: | + | Il est possible de retrouver une [[http:// |
| - | + | ||
| - | Une documentation plus exhaustive | + | |
| - | [[http:// | + | |
| - | ==== PHP et MySQL ==== | + | Une documentation plus exhaustive sur les différentes directives de configuration sont disponibles [[http:// |
| - | Nous allons mettre en place le langage PHP5 et configurer Lighttpd pour qu'il puisse l' | ||
| - | [[: | + | ==== PHP ==== |
| - | Exécutez la commande suivante pour activer le module fastcgi : | + | après avoir installé [[:PHP]] , activer le module fastcgi |
| - | sudo lighty-enable-mod fastcgi | + | < |
| | | ||
| - | Depuis | + | Depuis |
| - | sudo lighty-enable-mod fastcgi-php | + | < |
| | | ||
| Puis rechargez la configuration de lighttpd: | Puis rechargez la configuration de lighttpd: | ||
| - | | + | < |
| - | Enfin, | + | Enfin, |
| - | sudo sh -c 'echo "<? | + | |
| - | sudo chown -R www-data: | + | |
| - | w3m http:// | + | |
| - | + | ||
| - | Lors du test ci-dessus si vous rencontrez une **erreur 403**, ajoutez à la fin du fichier **/ | + | |
| - | cgi.fix_pathinfo = 1 | + | |
| - | (//source erreur 403// : [[http:// | + | |
| - | <note tip>Si, sous **Ubuntu 11.10**, la correction du fichier / | + | |
| - | < | + | |
| - | et ajoutez-y | + | |
| - | < | + | |
| - | " | + | |
| - | " | + | |
| - | | + | |
| - | [[http:// | + | |
| - | FIXME | + | |
| - | </ | + | |
| - | + | ||
| - | + | ||
| - | <note tip>Sous **Ubuntu 12.04** ajouter uniquement dans le fichier / | + | |
| < | < | ||
| - | server.modules | + | sudo sh -c 'echo "<? |
| - | | + | sudo chown -R www-data: |
| - | | + | </ |
| - | </code> | + | 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 | ||
| + | fastcgi.server += ( " | ||
| + | (( | ||
| + | "socket" | ||
| + | " | ||
| + | )) | ||
| + | ) | ||
| + | </file> | ||
| + | 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 ==== | ==== MySql ==== | ||
| + | FIXME Installez [[:Mysql]] | ||
| + | |||
| Il suffit d' | Il suffit d' | ||
| - | **[[apt://mysql-client, | + | **[[apt>mysql-client, |
| Et éventuellement PHPMyAdmin : | Et éventuellement PHPMyAdmin : | ||
| - | **[[apt://phpmyadmin|phpmyadmin]]** | + | **[[apt>phpmyadmin|phpmyadmin]]** |
| Lors de l' | Lors de l' | ||
| Ligne 103: | Ligne 105: | ||
| Après l' | Après l' | ||
| - | + | < | |
| - | | + | sudo / |
| - | sudo / | + | sudo / |
| - | sudo / | + | </ |
| Si vous avez installé PHPMyAdmin, la base de données est alors accessible à l' | Si vous avez installé PHPMyAdmin, la base de données est alors accessible à l' | ||
| Ligne 114: | Ligne 115: | ||
| ==== Ruby ==== | ==== Ruby ==== | ||
| - | Si ce n'est pas déjà fait, il faut commencer par installer l' | + | <note warning> |
| - | < | + | |
| - | sudo gem install --no-rdoc --no-ri -v=2.3.4 rails</ | + | |
| - | + | ||
| - | L' | + | |
| - | \\ Par exemple / | + | |
| - | + | ||
| - | Dernière étape, la configuration | + | |
| - | \\ Voici un fichier de configuration (qui fonctionne presque, il manque l'url rewriting...). | + | |
| - | + | ||
| - | <code># | + | |
| - | ## FastCGI programs have the same functionality as CGI programs, | + | |
| - | ## but are considerably faster through lower interpreter startup | + | |
| - | ## time and socketed communication | + | |
| - | ## | + | |
| - | ## Documentation: | + | |
| - | ## http:// | + | |
| - | + | ||
| - | alias.url += ( "/ | + | |
| - | server.modules += ( " | + | |
| - | + | ||
| - | ## Start an FastCGI server for ruby (needs the libfcgi-ruby package) | + | |
| - | $HTTP[" | + | |
| - | server.indexfiles = ( " | + | Deux exemples de configuration pour Redmine, le premier avec fastcgi |
| - | url.rewrite-once = ( | + | < |
| - | "^/(.*\..+(?!html))$" => "$0", | + | # avec fastcgi, mod_fastcgi |
| - | "^/(.*)\.(.*)" | + | $HTTP[" |
| - | ) | + | server.document-root = "/ |
| + | accesslog.filename | ||
| + | server.error-handler-404 = "/ | ||
| + | server.indexfiles = ( " | ||
| + | fastcgi.server += ( | ||
| + | " | ||
| + | "redmine" | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | " | ||
| + | ), | ||
| + | " | ||
| + | ) | ||
| + | ) | ||
| + | ) | ||
| + | alias.url += ( "/ | ||
| + | }</ | ||
| - | fastcgi.server += ( ".fcgi" => | + | < |
| - | (( | + | # avec Thin, mod_proxy |
| - | | + | $HTTP["host"] =~ "hostname" |
| - | " | + | server.document-root |
| - | "max-procs" => 2, | + | accesslog.filename |
| - | "idle-timeout" => 20, | + | $HTTP["url"] !~ " |
| - | | + | proxy.balance = " |
| - | "RAILS_ENV" => "production", | + | proxy.server |
| - | "RAILS_RELATIVE_URL_ROOT" => "/myapp", | + | ( "host" => " |
| - | "LANG" => "fr_FR.UTF-8" | + | ( "host" => "127.0.0.1", " |
| - | | + | ( "host" => "127.0.0.1", " |
| - | )) | + | ( "host" => "127.0.0.1", " |
| - | | + | )) |
| - | }</code> | + | } |
| + | alias.url += ( "/plugin_assets/" | ||
| + | } | ||
| + | # / | ||
| + | --- | ||
| + | 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 ==== | ==== SSL ==== | ||
| - | Pour utiliser un certificat SSL, il faut au préalable installer les paquets suivants | + | Pour utiliser un certificat SSL, il faut au préalable |
| - | < | + | |
| Pour créer un certificat SSL auto-signé, | Pour créer un certificat SSL auto-signé, | ||
| Ligne 170: | Ligne 186: | ||
| Une fois le certificat créé, il faut modifier la configuration du serveur pour qu'il accepte les connexions HTTPS sur le port 443. | 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 [[: | \\ Pour ce faire, il faut [[: | ||
| - | <code> | + | <file> |
| ssl.engine = " | ssl.engine = " | ||
| - | ssl.pemfile = "/ | + | ssl.pemfile = "/ |
| Dernière étape, le redémarrage du serveur. | Dernière étape, le redémarrage du serveur. | ||
| Ligne 181: | Ligne 197: | ||
| < | < | ||
| - | \\ https:// | + | [[https:// |
| ===== Désinstallation ===== | ===== Désinstallation ===== | ||
| Ligne 192: | Ligne 208: | ||
| * **(fr)** [[http:// | * **(fr)** [[http:// | ||
| * **(en)** [[http:// | * **(en)** [[http:// | ||
| - | * **(en)** [[http://nanotux.com/blog/the-ultimate-server/3/#l-php5| The ultimate server]] | + | * **(en)** [[https://www.howtoforge.com/tutorial/installing-lighttpd-with-php7-php-fpm-and-mysql-on-ubuntu-16.04-lts/ |
| ---- | ---- | ||
| // | // | ||
