Nginx 1.4.x sur les systèmes Unix
Cette documentation couvre l'installation et la configuration de PHP avec
PHP-FPM pour le serveur HTTP Nginx 1.4.x.
Ce guide suppose que vous avez compilé Nginx à partir des sources et donc
tous les binaires et fichiers de configuration se trouvent dans
/usr/local/nginx. Si ce n'est pas le cas et que vous avez
obtenu Nginx par d'autres moyens, veuillez vous référer au
Wiki d'Nginx pour adapter ce manuel
pour votre configuration.
Ce guide couvre les bases de la configuration du serveur Nginx afin de
parvenir à servir une application PHP sur le port 80. Il est recommandé
d'étudier les documentations d'Nginx et de PHP-FPM afin d'optimiser votre
installation.
Veuillez noter que tout au long de cette documentation, les numéros de version
ont été remplacé par un "x" pour assurer que cette dernière reste correcte
dans l'avenir. Pensez à les remplacer par votre numéro de version.
Il est recommandé de consulter la
documentation de Nginx
afin de l'installer sur votre système.
Récupérer et décompresser les sources de PHP :
Configurer et compiler PHP. Ce sera le moment où vous pourrez
personaliser PHP avec diverses options, comme les extensions
à activer. Exécuter ./configure --help pour obtenir une liste
des options disponibles. Dans notre exemple, vous effectuerons
une configuration simple avec le support PHP-FPM et MySQLi.
Récupérer et déplacer les fichiers de configuration dans
les bons dossiers
Il est important que vous empéchiez Nginx de passer les requêtes
au backend PHP-FPM si le fichier n'existe pas, évitant ainsi
les failles par injections arbitraires de scripts.
Nous pouvons réaliser cela en définissant la directive
de configuration cgi.fix_pathinfo
à la valeur 0 dans votre php.ini.
Editer php.ini :
Trouver la directive cgi.fix_pathinfo=
et modifier là comme ceci :
Le fichier php-fpm.conf doit être modifié pour spécifier que
php-fpm doit être exécuté avec l'utilisateur
www-data et le groupe www-data avant de démarrer le service :
Trouver et modifier ce qui suit :
Le service php-fpm peut maintenant être démarré :
Ce guide ne va pas configurer php-fpm plus que cela ; si vous
êtes intéressé dans la configuration avancée de php-fpm, veuillez
consulter la documentation.
Nginx doit maintenant être configuré pour supporter l'analyse des
applications PHP :
Modifier le bloc par défaut afin qu'il puisse servir des fichiers
.php :
La prochaine étape permet d'assurer que les fichiers .php soient passés
au backend PHP-FPM ; Sous le bloc commenté par défaut et entrez :
Redémarrer Nginx.
Créez un fichier de test
" >> /usr/local/nginx/html/index.php
]]>
Maintenant, naviguez vers http://localhost. Le phpinfo()
devrait maintenant être affiché.
En suivant ces différentes étapes, vous devriez exécuter un serveur
web Nginx avec le support de PHP comme module FPMSAPI.
Bien entendu, il y a beaucoup plus d'options de configuration de
disponible pour Nginx et PHP. Pour plus d'informations, tapez
./configure --help dans la source correspondante.