php-fpm报502问题的解决办法

admin3年前PHP教程56

搭建lnmp完lnmp环境后,测试时出现502报错,看到这个问题,我立刻想到是php-fpm没有起来,但是我用 ps -ef | grep php-fpm 截取 php-fpm 的进程,发现是有的,这时我有查看nginx的错误日志,发现错误信息是:

2017/05/05 17:08:45 [crit] 3258#0: *2 connect() to unix:/tmp/php-cgi.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.88.1, server: 192.168.88.133, request: "GET /index.php HTTP/1.1", upstream: "fastcgi://unix:/tmp/php-cgi.sock:", host: "192.168.88.134"

备注:php我用的版本是7.1.4的,最新的版本,之前用5.6版本的时候没有出现过这个问题

思路:发现php-fpm的listen是unix sock方式运行的,问题可能出在php-fpm上。既然没有这个文件,就先把文件创建出来
1、创建这个文件,并赋予权限,因为我在编译的时候是用www用户,所以将/tmp/php-cgi.sock的属主和属组都授权为www

touch /tmp/php-cgi.sock

chown www /tmp/php-cgi.sock

重启ngix和php-fpm发现还是502的问题

2、我在网上也查看了下,说是其中
fastcgi_pass为配置nginx与php-fpm的交互路径,一般有两种方式
sock方式:fastcgi_pass unix:/tmp/php-cgi.sock;
http方式:fastcgi_pass 127.0.0.1:9000;
任选其中一种即可,但必须和php-fpm的配置一致。
后来我就在nginx的配置文件中加上一下代码

location ~.php$ {  

    root /root/wwwroot;  

    fastcgi_pass unix:/tmp/php-cgi.sock;  

    fastcgi_index index.php;  

    include fastcgi.conf;  

3、同时修改php-fpm的配置文件php-fpm.conf,将listen = 127.0.0.1:9000改为

listen = /tmp/php-cgi.sock#这个是设置 /tmp/php-cgi.sock 权限用的listen.owner = wwwlisten.group = wwwlisten.mode = 0660

再次重启ngix和php-fpm,问题解决

总结:

1、其实这个问题总体就是nginx与php-fpm的交互问题,看我们选择是sock方式还是http方式,但是不管选择哪一种,我们都需要统一
2、我在网上看到有人说将max_children 进程改大,其实这种情况我之前遇到过,它适用于本来php运行正常,突然出现502的问题,这个问题是php-fpm队列满了,出现连接拒绝的错误。如果有问题,可以参考我的博客:blog.csdn/m0_37886429/article/details/70048754
3、还有人说将php-fpm配置文件里有backlog,backlog是linux服务器在socket处理连接数的定义,phpfpm默认为-1,将-1改为4096,重启php-fpm问题。
4、其实我们不管选择哪一种,主要是针对自己的问题,先要看报错,然后再对症下药,不要这一种试试那一种试试。

以上就是php-fpm报502问题的解决办法的详细内容,更多关于php-fpm报502问题的资料请关注其它相关文章!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

新加坡gpu服务器可以租来渲染吗

新加坡gpu服务器可以租来渲染吗?如果你需要进行大规模的图形渲染任务,可能需要一台强大的GPU服务器来完成。有一些服务提供商可以提供新加坡GPU服务器的租赁服务,让你可以轻松地进行图形渲染和其他计算密...

海外站群服务器不同在哪租用美国站群服务器选择什么配置好

海外站群服务器不同在哪?一些朋友可能都不清楚站群服务器是什么,对此这篇就给大家来详细的介绍一下。另外选择什么站群服务器好,也是大家比较关心的问题,下文给大家对比了热门的站群服务器,相信对大家选择合适的...

泰国服务器的优势有哪些

泰国服务器的优势有哪些?泰国服务器的优势如下:地理位置优越:泰国位于东南亚地区,紧邻中国和印度,距离日本和韩国也很近。这使得泰国服务器可以为周边国家、地区提供高质量的网络服务和可靠的连接。低廉的成本:...

laravel修改用户模块的密码验证实现

目录从配置文件入手 使用Auth门面的attempt方法进行登录 修改 Admin 模型 文章参考 做项目的时候,用户认证几乎是必不可少的,如果我们的项目由于一些原因不得不使用 users 之外的用户...

PHP时间类完整代码实例

开发中,经常用到时间的一些例子,比如昨天,今天,前天,近七天,一周等等。这里整理了一个时间的完整类实例,直接实例化,有需要的可以看看以下直接代码<?phpheader("Content...

gpu服务器与FpgA云服务器有什么区别美国GPU服务器有哪些方面的优点

gpu服务器(gpucloudcomputing)是基于gpu应用的计算服务,具有实时高速的并行计算和浮点计算能力,适应用于3d图形应用程序、视频解码、深度学习、科学计算等应用场景。我们提供和标准云服...