J'ai installé nginx avec PHP-FPM sur une boîte CentOS 5, mais j'ai du mal à le faire servir l'un de mes fichiers - que ce soit PHP ou non.
Nginx s'exécute en tant que www-data: www-data, et le site par défaut "Welcome to nginx on EPEL" (appartenant à root: root avec 644 permissions) se charge correctement.
Le fichier de configuration nginx a une directive d' inclusion pour /etc/nginx/sites-enabled/*.conf, et j'ai un fichier de configuration example.com.conf , donc:
server {
listen 80;
Virtual Host Name
server_name www.example.com example.com;
location / {
root /home/demo/sites/example.com/public_html;
index index.php index.htm index.html;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /home/demo/sites/example.com/public_html$fastcgi_script_name;
include fastcgi_params;
}
}
Bien que public_html appartienne à www-data: www-data avec 2777 autorisations de fichier, ce site ne parvient à diffuser aucun contenu -
[error] 4167#0: *4 open() "/home/demo/sites/example.com/public_html/index.html" failed (13: Permission denied), client: XX.XXX.XXX.XX, server: www.example.com, request: "GET /index.html HTTP/1.1", host: "www.example.com"
J'ai trouvé de nombreux autres articles avec des utilisateurs obtenant des 403 de nginx, mais la plupart que j'ai vus impliquent des configurations plus complexes avec Ruby / Passenger (avec lesquelles j'ai réussi dans le passé) ou ne reçoivent des erreurs que lorsque PHP en amont -FPM est impliqué, donc ils semblent être de peu d'aide.
Ai-je fait quelque chose de stupide ici?