====== 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 !