У мене nginx 0.7x + PHP-FPM працює під PHP 5.2.10 на одному сервері RHEL5, але намагаюся дублювати цю установку під вбудованим PHP-FPM в PHP 5.3.3 на другому сервері, у мене є деякі проблеми з помилками дозволу щоразу, коли є GET.
FPM запускається і підтверджує, що fastcgi прослуховує 9000, але щоразу, коли я GET, я бачу цю помилку в журналі nginx:
2010/08/12 23:38:53 [crit] 5019#0: *5 stat() "/home/noisepages/www/" failed (13: Permission denied), client: 24.215.173.141, server: dev.noisepages.com, request: "GET / HTTP/1.1", host: "dev.noisepages.com"
Barebones nginx.conf.default працює, принаймні. Ось мій nginx.conf
server {
listen 80;
server_name dev.noisepages.com;
root /home/noisepages/www;
index index.html index.htm index.php;
access_log logs/dev.access.log;
error_log logs/dev.error.log;
location / {
if (-f $request_filename) {
expires 30d;
break;
}
# this sends all non-existing file or directory requests to index.php
rewrite ^.*/files/(.*) /wp-includes/ms-files.php?file=$1;
if (!-e $request_filename) {
rewrite ^.+?(/wp-.*) $1 last;
rewrite ^.+?(/.*\.php)$ $1 last;
rewrite ^ /index.php last;
}
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/dev/shm/php-fastcgi.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/dev/www/$fastcgi_script_name;
}
}
(Додаткові директиви перезапису призначені для використання багатостороннього сайту WordPress aka WordPress MU)
Я також переконався, що www-дані користувача оголошуються не лише у nginx.conf, але й у php-fpm.conf для значень користувачів та груп.
Можливо, я не розумію, що викликає повідомлення про помилку 13? Як не дивно, я намагався налаштувати dev.noisepages.com на перший сервер паралельно з парою інших віртуальних хостів - кожен з яких працював чудово - і мав однакову помилку.