php出现502错误怎么解决

王林
王林 原创
2023-03-01 18:56:01 5100浏览

php出现502错误的解决方法是:1、调高fastcgi进程个数;2、调高linux内核打开文件数量;3、编辑配置文件nginx.conf,调整脚本执行时间;4、增加缓存配置到nginx.conf配置文件中。

分析:

php-cgi进程数不够用、php执行时间长、或者是php-cgi进程死掉,都会出现502错误。

如何解决?

1、调高进程数

使用 netstat -napo |grep "php-fpm" | wc -l 查看一下当前 fastcgi 进程个数,如果个数接近 conf 里配置的上限,就需要调高进程数。

但也不能无休止调高,可以根据服务器内存情况,可以把 php-fpm 子进程数调到 100 或以上,在 4G 内存的服务器上 200 就可以。

2、调高 linux 内核打开文件数量

可以使用这些命令 ( 必须是 root 帐号 )

echo 'ulimit -HSn 65536'>> /etc/profile
echo 'ulimit -HSn 65536'>> /etc/rc.local
source /etc/profile

3、调整脚本执行时间

如果脚本因为某种原因长时间等待不返回 ,导致新来的请求不能得到处理,可以适当调小如下配置。

nginx.conf 里面主要是如下:

fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

php-fpm.conf 里如要是如下

request_terminate_timeout =10s

4、增加缓存

修改或增加配置到 nginx.conf

proxy_buffer_size 64k;
proxy_buffers  512k;
proxy_busy_buffers_size 128k;

如果您需要学习更多知识,请访问php中文网

以上就是php出现502错误怎么解决的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。