Mot-clé - Lighttpd

Fil des billets - Fil des commentaires

lundi 13 décembre 2010

Lighttp : serveur Web

Lighttpd est un serveur web pouvant venir en remplacement d'un apache, en être un frontale ou un backend. L'avantage par rapport à son ancêtre est qu'il est plus légers, moins passoire et relativement plus rapide. Pour référence en production, on peu citer Youtube, wikipedia ...

1) Installation

# sudo aptitude install lighttpd
# sudo /etc/init.d/lighttpd start

  • rien de plus :)
2) PHP

De base le php n'est pas présent, mais s'ajoute sous forme de plugin
# sudo aptitude install php5-cgi

Activer le module
# sudo lighty-enable-mod fastcgi
# sudo /etc/init.d/lighttpd force-reload

3) Mysql

# sudo aptitude install mysql-client mysql-server

  • Suite à cela, il vous sera demandé de configurer mysql avec le login, mdp et autre. Pas bien compliquer et pas l'objet de ce billet.

On active Mysql dans Lightty
# sudo lighty-enable-mod userdir
# sudo /etc/init.d/mysql start // normalement pas utile
# sudo /etc/init.d/lighttpd force-reload

4) PHPmyAdmin (optionnel)

Dans le cas ou vous souhaiteriez pouvoir gerer votre serveur Mysql via une interface graphique.
# sudo aptitude install phpmyadmin
# sudo /etc/init.d/lighttpd force-reload

5) SSL

Pour avoir le HTTPS sur votre serveur
# sudo aptitude install openssl ssl-cert

Création du cerificat
# sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /chemin_de_mon_certificat/mon_certificat.pem

  • dans le cas ou ça ne fonctionnerais pas :

# cd /etc/lighttpd
# openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mon_certificat.pem -out mon_certificat.pem

Editer le fichier de configuration (/etc/lighttpd/lighttpd.conf) pour la prise en charge
$SERVER"socket" == ":443" {
ssl.engine = "enable"
ssl.pemfile = "/chemin_de_mon_certificat/mon_certificat.pem"
}

Redemarer lightty pour la prise en charge
# sudo /etc/init.d/lighttpd restart

6) Configuration des hosts

Ce n'est qu'un configuration rapide et fonctionnel. Toutefois il existe tout une syntaxe pour la définition des fichiers Hosts sur le site de lighttpd
Se placer dans le dossier des hosts :
#cd /etc/lighttpd/conf-enabled/

Créer son fichier hosts et l'éditer :
# sudo vi mon_fichier.conf

Y ajouter :
$HTTP"host" == "www.exemple.org" {
server.document-root = "/chemin/de/mon/site/"
server.errorlog = "/var/log/mon_log_erreur"
accesslog.filename = "/var/log/mon_log_accès"
}

Activer l'host et le faire prendre en compte
# sudo lighty-enable-mod mon_fichier.conf
# sudo /etc/init.d/lighttpd force-reload

Il est intéressant de faire un .conf par site(host) présent sur le site.


jeudi 2 décembre 2010

Reverse proxy avec Lighttpd

1) Modifier le fichier lighttpd.conf (/etc/lighttpd/) et décommenter le module proxy:

server.modules = (
...
"mod_proxy",
...
)

2) Activer le module

# sudo lighty-enable-mod proxy

3) Créer le fichier de configuration :

# sudo vi /etc/lighttpd/conf-enabled/mon-fichier.conf

$HTTP"host" == "www.exemple.com" {
proxy.server = ( "" =>
( (
"host" => "192.168.13.37"
) )
)
}