Quel est le moyen le plus simple d’activer PHP sur nginx sous Ubuntu 12.04?
La meilleure solution est celle qui demande un minimum de travail, idéalement juste une installation de package:)
La méthode suivante vous permettra de démarrer rapidement sur Ubuntu 12.04:
Installez les dépendances:
sudo apt-get install php5-common php5-cli php5-fpm
Installer nginx:
sudo apt-get install nginx
Démarrer nginx:
sudo service nginx start
Testez son fonctionnement (voir "Bienvenue dans nginx!")
sudo service nginx stop
Dans votre configuration du site nginx (/ etc / nginx / sites-available / default), modifiez la ligne dans la section {} du serveur
index index.html index.htm
à index index.php index.html index.htm
.
Décommentez les lignes dans la section du serveur {} en commençant par
listen
pour ipv4 / ipv6 les deux.
Faites défiler jusqu’à ce qu’il indique "location ~ .php {" et décommentez les lignes pour qu’elles ressemblent à ceci:
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi_params;
}
sudo service php5-fpm restart
sudo service nginx restart
Votre racine Web par défaut se trouve dans / usr / share / nginx / www (selon le fichier de configuration). (Voir root /usr/share/nginx/www;
(Remarque: pour Ubuntu 12.10 ou plus récent, vous devrez remplacer la ligne fastcgi_pass 127.0.0.1:9000;
par celle-ci pour que cela fonctionne: fastcgi_pass unix:/var/run/php5-fpm.sock;
)
MODIFIER: Comme indiqué par Matt Browne , cela pourrait vous intéresser article plus récent:
Comment installer Linux, Nginx, MySQL, PHP (pile LEMP) dans Ubuntu 16.04
La réponse de papashou est correcte sur l’ancien Ubuntu 12.04. Depuis Ubuntu 12.10, la configuration est un peu différente. Voici ce que j'ai fait:
Installer
sudo apt-get install nginx php5-fpm
Activer PHP
Décommentez les lignes suivantes dans le fichier de configuration /etc/nginx/sites-available/default
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
# NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
# # With php5-cgi alone:
# fastcgi_pass 127.0.0.1:9000;
# With php5-fpm:
fastcgi_pass unix:/var/run/php5-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
}
Démarrer (ou redémarrer)
sudo service php5-fpm restart
sudo service nginx restart
Tester nginx
L'ouverture de ce lien http://localhost
devrait afficher "Bienvenue dans nginx!"
Tester php
Créez un fichier php:
Le chemin cible est la sortie de
awk -F' |;' '/^[^#]*root/ {print }' /etc/nginx/sites-available/default
p. ex. /usr/share/nginx/www
Ecrivez un fichier info.php
avec:
echo '<?php phpinfo(); ?>' | \
sudo tee /usr/share/nginx/www/info.php
ou en un seul ticket
echo '<?php phpinfo(); ?>' | \
sudo tee "$(awk -F' |;' '/^[^#]*root/ {print }' /etc/nginx/sites-available/default)/info.php"
L’ouverture de http://localhost/info.php
devrait afficher la page d’information de PHP.