====== lighttpd ======
===== Introduction =====
[[http://www.lighttpd.net/|lighttpd]] est un serveur conçu pour être léger et rapide. D'après ses concepteurs, il a été écrit pour prendre en charge les sites Web nouvelle génération. Ainsi, Youtube, Wikipedia ou Meebo utilisent lihttpd.
===== Installation =====
L'intégralité des actions qui vont suivre doivent être exécutées en tant que super-utilisateur (typiquement : root).
==== Installation du serveur web ====
Pour installer lighttpd, utilisez le gestionnaire de paquets présent dans votre distribution.
Par exemple sous Debian 5.0 avec apt-get, entrez : # apt-get install lighttpd
Dès lors, lighttpd devrait être installé.
Pour tester si votre serveur a pu se lancer sans problèmes, visitez l'adresse http://serveur/ avec votre navigateur web.
Si vous voyez une page écrite en anglais dont le titre est « Welcome page », c'est que votre serveur fonctionne.
Si vous ne voyez pas cette page et que votre navigateur vous dit qu'il n'a pas pu trouver le serveur à cette adresse, c'est que votre serveur n'a pas pu démarrer ou a été mal installé.
Vérifiez le fichier ''/var/log/lighttpd/error.log''.
Celui-ce devrait vous indiquer pourquoi le serveur n'a pas pu démarrer.
Si le log n'existe pas, il faudra alors réinstaller lighttpd.
Pour redémarrer votre serveur, entrez :
# /etc/init.d/lighttpd restart
Dès que votre serveur est fonctionnel, le répertoire ''/var/www/'' correspond au répertoire racine de votre serveur http://serveur/.
C'est donc là qu'il faudra entreposer vos pages HTML (car pour le moment, lighttpd ne supporte pas PHP).
Pour que votre serveur soit accessible de l'extérieur, il faudra [[réseau:routeur:redirections_de_port|ouvrir le port 80 de votre routeur]].
==== Installation de php5 ====
Pour installer php5, utilisez le gestionnaire de paquets présent dans votre distribution.
Par exemple sous Debian 5.0 avec apt-get, entrez : # apt-get install php5-cgi
Après l'installation, nous allons devoir activer le module //fastcgi// de lighttpd pour que php5 soit pris en compte.
Pour cela, entrez :
# lighty-enable-mod fastcgi
Puis redémarrez le serveur comme indiqué :
# /etc/init.d/lighttpd force-reload
Voilà, php5 devrait donc maintenant être opérationnel.
Pour vérifier que php5 marche bien, nous allons créer un fichier nommé ''phpinfo.php'' dans ''/var/www/''
Éditez ce fichier et placez les lignes suivantes à l'intérieur :
Accédez ensuite à votre serveur à l'adresse http://serveur/ et cliquez sur ''phpinfo.php''.
Vous devriez alors avoir sous les yeux une montagne d'informations sur votre serveur et sur PHP.
Si ce n'est pas le cas, je vous invite à suivre la même manœuvre que celle décrite plus haut, lors de l'installation.
Pour plus d'informations à propos du langage PHP, vous pouvez visiter le site [[http://www.php.net|http://www.php.net]].
==== Installation de MySQL avec PHP5 ====
Pour installer MySQL, rendez-vous sur [[serveurs:mysql|cette page]].
Avoir une base MySQL est intéressant mais il serait encore plus intéressant que PHP5 puisse communiquer avec MySQL; c'est là la base de ce que l'on pourrait appeler le « Web 1.5 » : les informations ne sont plus directement écrites dans le fichier chargé par le serveur Web mais dans une base de données.
Les **CMS** (**C**ontent **M**anagement **S**ystem) utilisent largement cette méthode pour permettre à l'utilisateur de mettre du contenu en ligne sans avoir de connaissances particulières en programmation Web.
Donc, pour que MySQL puisse communiquer avec PHP5, il va falloir installer « php5-mysql ».
# apt-get install php5-mysql
Puis redémarrer lighttpd.
# /etc/init.d/lighttpd restart
On va ensuite tester la communication entre PHP et MySQL;
Pour cela, vous pouvez vous rendre sur phpinfo.php à la rubrique MySQL(phpinfo.php#module_mysql)
Ou créer un fichier php qui se connectera à votre base de données.
Créez ce fichier dans ''/var/www/''.
Ensuite, remplissez ce fichier comme suivi en remplaçant mdp-de-root par le mot de passe que vous avez choisi.
Test MySQL
Si la page affiche « La connexion est etablie », c'est que tout va bien, sinon, jetez un œil aux logs de MySQL et de lighttpd.
Voilà, ce sera tout pour MySQL !
==== Installation et configuration de modules complémentaires ====
Pour installer un module complémentaire, utilisez la commande :
# lighty-enable-mod nom_du_module
Pour désinstaller un module complémentaire, utilisez la commande :
# lighty-disable-mod nom_du_module
Le module « userdir », de même que pour Apache, permettra aux utilisateurs de la machine hébergeant le serveur lighttpd d'avoir leurs pages personnelles sous la forme : http://serveur/~identifiant/.
Les pages HTML doivent alors être placées dans leur ''~/public_html/''.
Pour activer ce module, entrez :
# lighty-enable-mod userdir
Voici, en vrac, une liste d'extensions pour php5 :
php5-curl
php5-gd
php5-idn
php-pear
php5-imagick
php5-imap
php5-mcrypt
php5-memcache
php5-mhash
php5-ming
php5-ps
php5-pspell
php5-recode
php5-snmp
php5-sqlite
php5-tidy
php5-xmlrpc
php5-xsl
php5-json
Toutes ces extensions s'installent avec votre gestionnaire de paquets favori !
Les fichiers de configuration de lighttpd sont localisés dans le répertoire ''/etc/lighttpd''.
Les manuels respectifs de lighttpd, PHP et MySQL peuvent également vous aider !