伺服器故障

網站出現 502 Bad Gateway,通常從哪裡查起?

502 並不等於網站檔案一定損壞。Nginx 無法從上游服務取得有效響應時,可能與 PHP-FPM、資源、超時或代理配置有關。

先確認故障範圍

紀錄 502 出現的時間、是否所有頁面都受影響、後台是否可瀏覽、是否只在高峰期發生,以及近期是否升級、遷移或修改配置。不同頁面和不同地區的表現,有助於判斷問題發生在 CDN、Web 服務還是應用層。

Nginx 與 PHP-FPM 是常見檢查點

PHP 網站常見鏈路是 Nginx → PHP-FPM → 應用程式 → 資料庫。502 可能來自 PHP-FPM 未運行、連接異常、進程耗盡或應用崩潰。需要結合 Nginx 錯誤紀錄、PHP 紀錄及服務狀態判斷,不能僅憑一個狀態碼下結論。

資源與超時也會造成間歇性故障

磁盤空間不足、內存壓力、資料庫連接過多、慢查詢或外部接口長時間無響應,都可能間接引起網站超時。單純把超時時間調大,可能掩蓋真正的性能問題。

恢復後要排查重複發生的原因

網站重新能瀏覽之後,仍應核對錯誤紀錄、資源變化、計劃任務和近期程式碼部署。涉及備份、服務重啓或配置調整時,先評估對在線業務的影響並保留回滾方案。

排查前先記錄重要資料

502 一般表示反向代理未能從上游服務取得有效回應。原因可能涉及 PHP-FPM、應用程式、逾時、網絡或伺服器資源,不能只看錯誤頁就斷定是 Nginx 本身出問題。

  • 記錄發生時間、受影響網址及是否所有頁面均有問題。
  • 比對 Nginx 錯誤紀錄與應用程式紀錄的相同時段。
  • 確認近期有否更新 PHP、插件、程式碼或伺服器設定。

修復後需要檢查甚麼

檢查受影響頁面、登入及主要業務流程,再觀察錯誤紀錄及伺服器資源。正式環境若需重啟服務或修改設定,應先評估影響並保留備份。

延伸參考

可參考:MDN Web Docs — 502 Bad Gateway

需要進一步排查? 如果網站已經影響瀏覽、訂單或數據安全,可先描述問題,再根據實際情況確認處理範圍。