Saya punya nginx 0.7x + PHP-FPM berjalan di bawah PHP 5.2.10 pada satu server RHEL5, tetapi mencoba untuk menduplikasi pengaturan itu di bawah PHP-FPM yang dibundel dalam PHP 5.3.3 pada server kedua, saya mengalami beberapa masalah dengan kesalahan izin setiap kali ada GET.
FPM dimulai, dan mengonfirmasi bahwa fastcgi mendengarkan pada 9000, tetapi setiap kali saya melakukan GET, saya melihat kesalahan ini di nginx log:
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 berfungsi, setidaknya. Ini nginx.conf saya
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;
}
}
(Arahan penulisan ulang tambahan adalah untuk penggunaan WordPress multisite alias WordPress MU)
Saya juga telah memverifikasi bahwa data pengguna www dideklarasikan tidak hanya di nginx.conf tetapi juga di php-fpm.conf untuk nilai-nilai pengguna dan grup.
Mungkin saya tidak mengerti apa yang menyebabkan pesan kesalahan 13? Anehnya, saya sudah mencoba mengatur dev.noisepages.com pada server pertama secara paralel dengan beberapa host virtual lainnya - yang masing-masing berfungsi dengan baik - dan mendapatkan kesalahan yang sama.