LinuxPedia

Wiki libre et indépendant dédié à GNU-Linux et BSD.

Outils pour utilisateurs

Outils du site


lighttpd

logo Lighttpd

installation sur Debian etch

(traduction et adaptation de : http://www.howtoforge.com/lighttpd_mysql_php_debian_etch)

1. préambule

Lighttpd est un serveur web rapide, sécurisé, répondant aux normes et spécialement destiné aux environnements où la vitesse est une priorité.
Ce didacticiel montre l'installation sur Debian Etch de ce serveur avec support pour PHP5 (grâce à FastCGI) et MySQL.
Pour votre distribution, adaptez le nom des logiciels et les chemins des fichiers.

Ce didactitiel n'est qu'un guide et n'offre aucune garantie quant aux éventuels dysfonctionnements qui pourraient affecter votre machine (freeze, crash, fumées suspectes …).

2. installation de MySQL

On commence par installer MySQL et ses dépendances :

apt-get install mysql-server mysql-client

Il est nécessaire (impératif, même !) de crée un mot de passe root pour MySQL :
(!! Attention : il ne s'agit pas du même root que celui qui administre votre système Linux donc n'utilisez pas le même mot de passe !!)

mysqladmin -u root password mot_de_passe_root

Puis, pour identifier sur quel(s) port(s) écoute le serveur MySQL:

netstat -tap | grep mysql

vous devez voir ceci (ou approchant) :

tcp 0 0 localhost:mysql *:* LISTEN 2713/mysqld

ce qui signifie que seul localhost est écouté par MySQL et qu'ainsi votre installation est sécurisé grâce au mot de passe précédemment défini.

si en revanche vous voyez ceci (ou approchant) :

tcp 0 0 *:mysql *:* LISTEN 2713/mysqld

il vous faudra également définir le même mot de passe root pour MySQL mais associé à votre localhost (et éviter que tout le monde ait accès à votre base et ce qu'elle contient) :

mysqladmin -h localhost -u root password mot_de_passe_root

3. installation de Lighttpd

Lighttpd est disponible dans les dépôts Debian. Ainsi :

apt-get install lighttpd

installera, configurera et démarrera votre serveur Lighttpd.

Rendez-vous maintenant dans votre navigateur et tapez http://localhost ou http://127.0.0.1.
Vous devriez avoir la page de garde de Lighttpd :

Par défaut, le répertoire principal de Lighttpd (le fameux document root) est /var/www (comme Apache !).
Le fichier de configuration se trouve dans /etc/lighttpd/lighttpd.conf.

4. installation de PHP5

PHP5 s'interface avec Lighttpd à travers FastCGI (tout comme les autres langages de script que sont Perl, Python ou Ruby).
Quelle chance ! Il y a justemment un paquet Debian qui fait ce travail :

apt-get install php5-cgi

Il en résulte la création d'un fichier de configuration : /etc/php5/cgi/php.ini

5. configuration de Lighttpd avec PHP5

Pour activer l'utilisation de PHP5 avec Lighttpd il vous faudra éditer deux fichiers :
/etc/php5/cgi/php.ini et /etc/lighttpd/lighttpd.conf.
Ouvrez d'abord le premier (logique !) et ajoutez cette ligne tout à la fin du fichier :

cgi.fix_pathinfo = 1

Ouvrez ensuite /etc/lighttpd/lighttpd.conf et ajoutez mod_fastcgi parmi les modules du serveur selon ce modèle :

[...]
server.modules              = (
          "mod_access",
          "mod_alias",
          "mod_accesslog",
          "mod_fastcgi",
#           "mod_rewrite",
#           "mod_redirect",
#           "mod_status",
#           "mod_evhost",
#           "mod_compress",
#           "mod_usertrack",
#           "mod_rrdtool",
#           "mod_webdav",
#           "mod_expire",
#           "mod_flv_streaming",
#           "mod_evasive"
 )
[...]

Puis, tout à la fin du même fichier, rajoutez ceci :

[...]
fastcgi.server = ( ".php" => ((
                   "bin-path" => "/usr/bin/php5-cgi",
                   "socket" => "/tmp/php.socket"
               )))

Enfin, redémarrez le serveur :

/etc/init.d/lighttpd restart

6. test de PHP5

Rendez-vous dans le répertoire /var/www et créez-y un fichier que vous appellerez info.php. Éditez ce fichier et ajoutez-y ceci :

<?php
phpinfo();
?>

Puis appelez ce fichier depuis votre navigateur : http://127.0.0.1/info.php.

Comme vous pouvez le constater sur la ligne Server API, PHP est bien configuré pour être interprété par le serveur à l'aide de FastCGI.
En parcourant ce fichier vous verrez tous les modules déjà opérationnels avec PHP5… mais vous n'y verrez pas de modules MySQL !?

7. support de MysQL dans PHP5

Pour obtenir le support de MySQL dans PHP5 le plus simple est :

apt-get install php5-mysql

Si vous souhaitez quelque chose de plus précis et de mieux adapté à vos besoins, utilisez cette commande :

apt-cache search php5

et choisissez parmi la (longue) liste ceux qui vous intéressent !

Redémarrez le serveur :

/etc/init.d/lighttpd restart

Réouvrez votre navigateur à l'adresse http://127.0.0.1/info.php et constatez cette fois la présence de MySQL (et des autres modules que vous auriez installés) !

Enjoy ! :)

8. liens

lighttpd.txt · Dernière modification : 2018/11/17 12:53 de 127.0.0.1