PHP运行出现502是什么原因,php出现502错误怎么解决

  • Post author:
  • Post category:php


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

117356f45db8960dfb91d356f45cccdb.png

分析:

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.confproxy_buffer_size 64k;

proxy_buffers 512k;

proxy_busy_buffers_size 128k;

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