Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php502是什么问题

php502是什么问题

王林
王林asal
2019-10-17 15:38:423130semak imbas

php502是什么问题

服务器出现502的原因是连接超时,我们向服务器发送请求,由于服务器当前链接太多,导致服务器方面无法给于正常的响应 , 产生此类报错。

因此如果你服务器并发量非常大,那只能先增加机器,然后按以下方式优化会取得更好效果 ; 但如果你并发不大却出现 502 ,一般都可以归结为配置问题,脚本超时问题。

1、php-fpm 进程数不够用

使用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视频教程

Atas ialah kandungan terperinci php502是什么问题. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php 忽略错误Artikel seterusnya:php中如何命名变量?