nginx无法连接到php-fpm套接字

我在这里设置了一个类似于教程的系统。

我有nginx连接到php5-fpm套接字的问题,但从我可以告诉在套接字上的权限是正确的…你能帮我一下吗?

 2011/04/14 15:31:24 [暴击] 13147#0:* 1连接()到unix:/var/run/php5-fpm.socket失败(2:没有这样的文件或目录)客户端:74.129。***。***,server:app.mydomain.com,请求:“GET /phpinfo.php HTTP / 1.1”,上游:“fastcgi:// unix:/ var / run / php5-fpm .socket:“,主机:”app.mydomain.com“

 root @ app0:/#ls -l /var/run/php5-fpm.socket
 srw-rw-rw- 1 www-data www-data 0四月14 15:51 /var/run/php5-fpm.socket

 root @ app0:/#ps aux |  grep fpm
根13315 0.0 1.9 168276 4948?  Ss 15:51 0:00 / usr / sbin / php5 -fpm --fpm-config /etc/php5/fpm/main.conf
 www-data 13316 0.0 2.1 168672 5492?  S 15:51 0:00 / usr / sbin / php5 -fpm --fpm-config /etc/php5/fpm/main.conf

 root @ app0:/#ps aux |  grep nginx
根13341 0.0 0.4 33200 1036?  Ss 15:52 0:00 nginx:主进程/ usr / local / nginx / sbin / nginx -c /etc/nginx/nginx.conf
 www-data 13342 0.0 0.7 34008 1880?  S 15:52 0:00 nginx:工作进程
 www-data 13344 0.0 0.6 33680 1628?  S 15:52 0:00 nginx:工作进程

我已经对您提供的configuration进行了一些自定义,但大体上是相同的。 想build议一个疑难解答途径?

这是很多教程省略的问题。 PHP用户应该是套接字的所有者。 所以你想确保

chown www-data:www-data /var/run/php5-fpm.socket 

我不知道究竟是什么原因造成的,可能是PHP代码的一些变化,但我find了解决这个问题的方法:

1)以root用户身份打开池configuration,位于/etc/php5/fpm/pool.d/www.conf

2)添加以下行:

  • listen.owner = www-data
  • listen.group = www-data

以下是所有configuration参数的完整文档 。

3)重新启动PHP FPM: sudo service php5-fpm restart

它应该用适当的用户和组重新创build套接字文件:

ls -lah / var / run / | grep php-rw-r--r-- 1 root root 4 Jun 24 18:19 php5-fpm.pid srw-rw---- 1 www-data www-data 0 Jun 24 18:19 php5-fpm.sock

我希望这会有所帮助! 干杯!