首頁  >  文章  >  後端開發  >  php為什麼會出現502錯誤

php為什麼會出現502錯誤

王林
王林原創
2020-06-30 13:19:246162瀏覽

php出現502錯誤的原因是:1、php.ini的memory_limit過小;2、php-fpm.conf中max_children或max_requests設定不合理;3、php程式執行時間過長而逾時。

php為什麼會出現502錯誤

常見的原因有以下幾種:

#1、php.ini 的memory_limit 過小(如果有個別php程式進程需要佔用極大記憶體時這個必須注意);

2、php-fpm.conf 中max_children或max_requests  設定不合理;

設定過小會因為沒有足夠的cgi進程處理請求,設定過大會出現一會兒有響應正常,一會兒等很久才有響應的狀況。

3、查看nginx錯誤日誌,發現pstream sent too big header while reading response  headerfrom upstream ,則檢查client head buffer,fastcgi buffer  size是否過小,可設置為32K;

4 、php 程式執行時間過長而逾時,檢查nginx和fastcgi中各種timeout設定;

5、php-fpm 有一個參數max_requests ,該參數指明了每個children最多處理多少個請求後便會被關閉;

在大量處理請求下,如果該值設定過小會導致children頻繁的自殺和建立而浪費大量時間,若所有的children差不多都在這個時候自殺,則重建前將沒有children回應請求,於是出現502  。可以將該值設定大一些或0[無限]。

如果您想了解更多相關知識,請造訪php中文網

以上是php為什麼會出現502錯誤的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn