nginx + PHP-FPM = nginx日志中的“权限被拒绝”错误13;配置错误?


20

我已经在一台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)

我还验证了,不仅在nginx.conf中声明了用户www-data,还在php-fpm.conf中声明了用户和组值。

也许我不明白是什么原因导致了错误13消息?奇怪的是,我试图在第一台服务器上与其他两个虚拟主机并行设置dev.noisepages.com,每个虚拟主机工作正常-并出现相同的错误。

Answers:


57

你需要确保你+x所有的路径中的目录,导致该网站的根-所以/home/home/noisepages/home/noisepages/www


2
是的,实际上www拥有正确的权限,但没有完整的路径!谢谢!很有道理-我的愚蠢错误。
彼得·柯恩

1
如果我能再给你10票,我会。
2012年

你真酷!我在Google花了2个小时来找到您的答案!谢谢!
Serhii Polishchuk

非常感谢!我在生产服务器上乱七八糟,发生这种情况时我汗流cold背……!
lephleg



1

我遇到了类似的问题,这使我到了这里。我的解决方案(基于选择的答案)是

chown -R root:www-data /home/noisepages/www
chmod g+w -R /home/noisepages/www

现在可以正常工作了:)


但是,如果您使用Chroot用户怎么办?使用chroot用户时,/ home / user / www文件夹必须归用户所有,并且不起作用。
文森特·利特

抱歉,我不知道:(
Scott Warren
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.