Nginx
nginx + PHP-FPM = nginx 日誌中的“權限被拒絕”錯誤 13;配置錯誤?
我在一台 RHEL5 伺服器上的 PHP 5.2.10 下執行了 nginx 0.7x + PHP-FPM,但試圖在第二台伺服器上的 PHP 5.3.3 中的捆綁式 PHP-FPM 下複製該設置,我有每次出現 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"
準系統 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 多站點又名 WordPress MU)
我還驗證了使用者 www-data 不僅在 nginx.conf 中聲明,而且在 php-fpm.conf 中聲明使用者和組值。
也許我不明白是什麼導致了錯誤 13 消息?奇怪的是,我試圖在第一台伺服器上設置 dev.noisepages.com 與其他幾個虛擬主機並行——每個都執行良好——並且得到了同樣的錯誤。
您需要確保在通向站點根目錄的路徑中的所有
+x
目錄上都有 - 所以,並且/home``/home/noisepages``/home/noisepages/www
確保 /home/dev 具有正確的權限
chmod +x /home/dev