Nginx : astuces pour un hébergement mutualisé
Boris HUISGEN June 18, 2009
Deux astuces dans le cadre d’un hébergement mutualisé de plusieurs sites avec Nginx.
En premier lieu, il est possible d’inclure des fichiers de configuration par l’option include. Ceci permet alors de créer un répertoire vhosts dédié aux fichiers de configuration de chaque site. Dans le fichier de configuration principal, il faut ajouter par ex :
http {
[...]
# virtual hosts
include /usr/local/etc/nginx/vhosts/*.conf;
}
Tous les fichiers .conf du répertoire vhosts seront alors inclus. Si un vhost doit être temporairement désactivé, il suffit de changer l’extension de son fichier.
La deuxième astuce touche l’utilisation du module FastCGI. Dans chaque vhost, il faut déclarer le support FastCGI pour PHP, Perl, etc… Il est possible de limiter cette déclaration à ces lignes :
location ~ \.php$ {
fastcgi_pass unix:/tmp/fcgi-php.sock;
fastcgi_index index.php;
include fastcgi_params;
}
en rajoutant la ligne suivante dans le fichier fastcgi_params :
# Virtual hosts support
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;