Nous allons voir comment faire pour que lighttpd exécute les scripts PHP et affiche leur résultat au lieu de leur contenu.

Configuration de PHP5 en FastCGI

Pour exécuter les scripts PHP, lighttpd peux utiliser l'interface standardisée CGI utilisée par les serveurs web. C'est une interface qui permet l'échange facile entre un serveur web et un moteur de rendu. Deux versions de cette interface sont disponibles avec lighttpd: la classique (CGI) et une version rapide (FastCGI). C'est cette dernière que nous allons utilisé.

On commence par installer la version CGI de PHP5.

# aptitude install php5-cgi

La configuration se situe dans le fichier /etc/lighttpd/conf-available/10-fastcgi.conf. Il doit ressembler à ceci :

server.modules += ( "mod_fastcgi" )
fastcgi.server = ( ".php" => ((
                     "bin-path" => "/usr/bin/php-cgi",
                     "socket" => "/tmp/php.socket"
                 )))

La première ligne active FastCGI. Le reste associe les fichiers avec l'extension .php à PHP et les exécute en utilisant la version CGI de PHP5.

Activation de la configuration

Pour l'activer il suffit de créer un lien de ce fichier dans le répertoire /etc/lighttpd/conf-enable:

# ln -s /etc/lighttpd/conf-available/10-fastcgi.conf /etc/lighttpd/conf-enabled/

Un redémarrage du serveur est ensuite nécessaire pour prendre en compte la nouvelle configuration:

# service lighttpd restart