php出現502錯誤怎麼解決

2020-07-16 10:06:28

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;

如果您需要學習更多知識,請存取TW511.COM

以上就是php出現502錯誤怎麼解決的詳細內容,更多請關注TW511.COM其它相關文章!