Nginx PHP-FPM:不允许操作

Nginx PHP-FPM:不允许操作,nginx,centos,php,Nginx,Centos,Php,当我尝试在浏览器中打开index.php时,我看到错误: No input file specified. 在error.log中: 2013/11/04 22:40:07[错误]3435#0:*4 FastCGI在stderr中发送:“无法打开主脚本:/var/www/index.php(不允许操作)”从上游读取响应头时,客户端:10.0.2.2,服务器:localhost,请求:“GET/HTTP/1.1”,上游:fastcgi://127.0.0.1:9000,主机:“本地主机” 服务器

当我尝试在浏览器中打开index.php时,我看到错误:

No input file specified.
在error.log中:

2013/11/04 22:40:07[错误]3435#0:*4 FastCGI在stderr中发送:“无法打开主脚本:/var/www/index.php(不允许操作)”从上游读取响应头时,客户端:10.0.2.2,服务器:localhost,请求:“GET/HTTP/1.1”,上游:fastcgi://127.0.0.1:9000,主机:“本地主机”

服务器的配置:

  • CentOS 6.4
  • PHP 5.4.17(从源代码处安装)
  • Nginx 1.0.15
PHP-FPM从用户nginx开始工作

$ ps aux | grep fpm
root      3460  0.0  0.7  29524  3428 ?        Ss   22:48   0:00 php-fpm: master process (/usr/etc/php-fpm.conf)
nginx     3462  0.0  0.5  29524  2732 ?        S    22:48   0:00 php-fpm: pool www            
nginx     3463  0.0  0.5  29524  2732 ?        S    22:48   0:00 php-fpm: pool www            
nginx     3464  0.0  0.7  29524  3592 ?        S    22:48   0:00 php-fpm: pool www            
nginx     3465  0.0  0.5  29524  2732 ?        S    22:48   0:00 php-fpm: pool www            
nginx     3466  0.0  0.5  29524  2732 ?        S    22:48   0:00 php-fpm: pool www            
vagrant   3468  0.0  0.1   5532   720 pts/0    D+   22:48   0:00 grep fpm

$ ls -la /var/www
drwxr-xr-x   2 nginx nginx 4096 Ноя  4 22:34 .
drwxr-xr-x. 19 root  root  4096 Ноя  4 22:31 ..
-rw-r--r--   1 nginx nginx   17 Ноя  4 22:34 index.php

打开catch\u workers\u output不起作用

问题出现在设置session.save\u path的不存在路径中,而不在php.ini中设置open\u basedir的列表中

您对index.php没有“x”权限,“x”表示执行。应该是“rwxr-xr-x”,我从未为通过web服务器工作的php文件添加“x”权限,并且没有任何问题。但我现在尝试为index.php添加'x'特权-这对我没有帮助,'不允许操作'绝对是一个权限问题。在产品环境中,最好使用自定义工作帐户来部署nginx和php。在这里,我注意到您使用“root”启动了php fpm,而工作进程实际上使用的是“nginx”帐户。“nginx”帐户无法访问“/var”。$ls-al/| grep var drwxr-xr-x。18根根根409623:16 var/var拥有allok的“读取”权限,我创建了目录/www,将目录/www和文件/www/index.php的所有者更改为nginx:nginx,但仍然收到错误:FastCGI在stderr中发送:“无法打开主脚本:/www/index.php(不允许操作)”从上游读取响应头时,客户端:10.0.2.2,服务器:localhost,请求:“GET/HTTP/1.1”,上游:fastcgi://127.0.0.1:9000,主机:“localhost”最有可能的问题是
session.save\u path
偶然出现的,唯一的问题是
open\u basedir
值。每当nginx日志中出现此错误时,只需检查PHP日志,错误的确切原因(通常由于
open\u basedir
限制而缺乏权限)就会显而易见。