Nginx的PHP5.6权限错误

问题描述:

我在我的Nginx error.log文件中得到以下错误,我需要做什么来防止这种情况发生?Nginx的PHP5.6权限错误

2016年6月28日9点43分37秒[暴] 1631#0:* 1 connect()以 UNIX:/run/php/php5.6 fpm.sock失败(13:权限被拒绝) while connected to upstream,client:192.168.56.1,server:my-vm,request: “GET/HTTP/1.1”,upstream: “fastcgi:// unix:/run/php/php5.6-fpm。 sock:“,$ host:”my-vm-1“

Nginx以www数据权限运行。是该错误消息所引用的文件夹(/run/php/php5.6-fpm.sock)的权限如下:

drwxr-xr-x 20 root  root   700 Jun 28 09:45 run 
drwxr-xr-x 2 www-data www-data  80 Jun 28 09:44 php 
srw-rw---- 1 www-data www-data  0 Jun 28 09:44 php5.6-fpm.sock 

的用户/组的PHP(/etc/php/5.6/fpm/pool.d/www.conf)是:

user = www-data 
group = www-data 
listen.owner = www-data 
listen.group = www-data 
listen.mode = 0660 

nginx.conf文件不具有任何值设定为user。有些人建议将其设置为www-data,但是如果我设置了这个,Nginx服务将不会启动,因此它被省略。

+0

这个问题似乎已经在这里存在:http://stackoverflow.com/questions/23443398/nginx-error-connect-to-php5-fpm-sock-failed-13-permission-denied – user2203384

+0

一个解决方案是在nginx配置中使用nginx作为用户,并将用户nginx添加到www-data组 – Vamsi

我解决了这个问题通过添加以下用户指令,以我的nginx.conf文件顶部

user www-data www-data;