我在CentOS5机器上安装了带有PHP-FPM的nginx,但是我很难让它为我的任何文件服务--不管是不是PHP.
Nginx以www-data:www-data的形式运行,默认的"欢迎来到Nginx-on-EPEL"站点(由root:root拥有644权限)可以正常加载.
nginx配置文件有一个include指令,用于启用/etc/nginx/sites/*.conf,和我有一个配置文件example.com.conf,因此:
server {
listen 80;
Virtual Host Name
server_name www.example.com example.com;
location / {
root /home/demo/sites/example.com/public_html;
index index.php index.htm index.html;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param PATH_INFO $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME /home/demo/sites/example.com/public_html$fastcgi_script_name;
include fastcgi_params;
}
}
尽管public_html由www-data:www-data拥有2777个文件权限,但此站点无法提供任何内容-
[error] 4167#0: *4 open() "/home/demo/sites/example.com/public_html/index.html" failed (13: Permission denied), client: XX.XXX.XXX.XX, server: www.example.com, request: "GET /index.html HTTP/1.1", host: "www.example.com"
我还发现了许多其他帖子,其中用户从nginx获得403,但我看到的大多数帖子要么涉及Ruby/Passenger的更复杂的设置(在过go ,我实际上已经成功地使用了Ruby/Passenger),要么只在涉及upstream PHP-FPM时收到错误,所以它们似乎没有什么帮助.
我是不是做了什么蠢事?