Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124

當你遇到 502 Bad Gateway 錯誤,且無法登入/訪問 WordPress 網站時,不必擔心,502 Bad Gateway 是可以被修復的,透過下面的教學,會逐步幫助你排除 502 Bad Gateway 產生的原因與修復。
用 AI 摘要這篇文章:
502 Bad Gateway 代表你的伺服器(通常是 Nginx)向後端 PHP-FPM 發出了請求,但收到了無效或完全沒有回應,導致網站無法載入。超過八成的 WordPress 502 錯誤可以在 30 分鐘內自行排除。
如果你正在處理其他 HTTP 5xx 錯誤,這幾篇也能幫上忙:
目錄
HTTP 502 屬於 5xx 伺服器錯誤家族,定義明確:作為閘道器或反向代理的伺服器,從上游伺服器收到了無效回應。
用白話來說:你的瀏覽器發出請求,經過 DNS 解析後抵達主機上的 Nginx(反向代理層),Nginx 再把 PHP 請求轉給 PHP-FPM 處理。當 PHP-FPM 當掉了、回應超時了、或者傳回格式錯誤的資料,Nginx 就會回報 502。
任何一個環節出問題都可能觸發 502,這也是為什麼成因很多。但只要理解「瀏覽器 → Nginx → PHP-FPM → WordPress」這條鏈路,排查就會有方向。
502 的錯誤頁面會根據瀏覽器、伺服器和是否有使用 CDN 而不同。辨識這些差異能幫你快速鎖定問題源頭。
如果錯誤頁面帶有 Cloudflare 標誌,問題多半在 CDN 層;如果看到 nginx 頁尾,問題就比較可能在你的主機伺服器端。
5xx 家族裡的四個常見成員,定義和常見原因各不相同。搞懂差異後,你就能更精準地判斷問題方向。
| 錯誤代碼 | 名稱 | 含義 | 常見原因 |
|---|---|---|---|
| 500 | Internal Server Error | 伺服器遭遇未預期的錯誤 | .htaccess 語法錯誤、PHP 程式碼異常、檔案權限不當 |
| 502 | Bad Gateway | 閘道器從上游收到無效回應 | PHP-FPM 當機、伺服器資源耗盡、上游未回應 |
| 503 | Service Unavailable | 伺服器暫時無法處理請求 | 伺服器過載、維護模式、流量暴增 |
| 504 | Gateway Timeout | 閘道器等待上游回應超時 | PHP 執行時間過長、資料庫查詢卡住、外部 API 逾時 |
簡單區分:500 是伺服器自己出錯;502 是伺服器之間的溝通出問題;503 是伺服器太忙暫時不接單;504 是等太久而放棄。如果你的網站也碰到資料庫連線錯誤,也可以參考我們的另一篇教學。
了解常見成因,能幫你更快找到問題癥結,而不是盲目嘗試。
當主機 CPU 使用率衝到 100% 或記憶體被吃光時,PHP-FPM 就無法處理新請求,Nginx 等不到回應就會回傳 502。這在低價共享主機上特別容易發生,一台上百個網站共用資源,任何一個流量暴衝都可能拖累其他人。
PHP-FPM 是 WordPress 背後的執行引擎。如果進程數設定太少(pm.max_children 過低),或者每個進程分配的記憶體不夠,在流量高峰時就會出現排隊等待,嚴重時直接 502。
快取類外掛、安全類外掛、或者大量查詢資料庫的外掛,效能問題更容易把伺服器資源吃光。安裝新外掛或更新外掛版本後突然出現 502,是最典型的症狀。
如果你使用了 Cloudflare 等 CDN 服務,多了一層代理就多了一個出問題的環節。CDN 自身的伺服器故障、DNS 設定不正確、或 CDN 無法正確連線到你的主機,都可能觸發 502。你也可以搭配Cloudflare DNS 的設定一起檢查。
WordPress 和許多外掛對 PHP 版本有最低要求。主機還在跑 PHP 7.x 而某個外掛需要 PHP 8.x,就可能產生致命錯誤。反過來說,升級 PHP 後某些老舊外掛沒跟上,也會出問題。這類狀況和WordPress 更新失敗的情境類似,都需要從版本相容性著手。
如果你修改過 Nginx 的 fastcgi_params 或 Apache 的 VirtualHost 設定,語法錯誤可能導致反向代理無法正確轉發請求。這類問題通常在修改設定後立即出現。碰到WordPress 無法正確顯示更新內容時,有時也跟伺服器設定有關。
有時問題根本不在你這邊。主機商進行伺服器維護、硬體故障、機房斷電等情況,都可能讓網站出現 502。這時你只需要等待主機商修復,但前提是要判斷出問題在他們身上。
以下方法按照從簡單到複雜的順序排列。動手之前,請先備份網站,可以使用 UpdraftPlus 等備份外掛,確保操作過程中可以隨時恢復。
502 可能只是伺服器短暫忙碌,過幾秒就好了,但瀏覽器把錯誤頁面快取了起來。強制重新整理可以繞過本機快取,重新向伺服器發出請求。
Ctrl + F5 或 Ctrl + Shift + RCmd + Shift + R如果重新整理後網站恢復正常,問題已經解決。如果還是不行,繼續往下。
在 Chrome 或 Firefox 中按下 Ctrl + Shift + Delete(Mac 是 Cmd + Shift + Delete),開啟「清除瀏覽資料」視窗。選擇「所有時間」範圍,勾選「快取圖片和檔案」以及「Cookie 和其他網站資料」,然後清除。
你也可以用無痕模式開啟網站測試。如果無痕模式能正常顯示,問題就確定是瀏覽器快取造成的。
如果你還能進入 WordPress 後台,直接到「外掛」頁面,勾選所有外掛後選擇「停用」,然後重新整理前台看 502 是否消失。
如果連後台都進不去,就需要透過 FTP 操作。你可以使用 Filester 等 WordPress 檔案管理外掛(前提是之前有安裝),或者直接用 FTP 客戶端(像是 FileZilla)連上伺服器。連上後找到 wp-content/plugins 資料夾,把它重新命名為 plugins-old。WordPress 找不到外掛資料夾後,所有外掛會被自動停用。
重新整理網站,如果 502 消失了,就把資料夾名稱改回 plugins,然後在後台逐一重新啟用外掛,找出肇事者。
如果停用所有外掛後 502 仍然存在,問題可能出在主題上。特別是使用重度客製化的 付費主題時,主題本身的程式碼錯誤也可能導致 PHP 崩潰。
同樣透過 FTP,進入 wp-content/themes 資料夾,把目前使用的主題資料夾重新命名(例如從 my-theme 改成 my-theme-old)。WordPress 找不到原本的主題時,會自動切換到 Twenty Twenty-Four 等內建主題。如果 502 因此消失,問題就出在主題上。
如果你使用了 Cloudflare,最簡單的方式是開啟「開發者模式」(Development Mode),這會暫時繞過 CDN 快取。在 Cloudflare 控制台的「快取」→「設定」裡可以找到這個選項。
或者把 Cloudflare 的 DNS 記錄從橘色雲朵(Proxied)切換成灰色雲朵(DNS Only),所有流量就會直接指向你的主機。如果繞過 CDN 後網站正常了,就需要進一步檢查 Cloudflare 設定。如果你同時使用了 Cloudflare Turnstile 等功能,也要確認設定沒有衝突。
透過 WordPress 後台的「工具」→「網站狀態」→「資訊」來查看目前的 PHP 版本和記憶體限制。WordPress 官方建議使用 PHP 8.x,並將記憶體限制設為至少 256MB。
如果你的主機控制台有提供 PHP 設定功能(cPanel 的 MultiPHP Manager、SiteGround 的 Site Tools 等),可以直接在那邊調整 PHP 版本和 memory_limit。你也可以在 wp-config.php 中加入以下程式碼來提高記憶體限制:
define('WP_MEMORY_LIMIT', '256M');
如果前面的方法都試過了還是沒用,伺服器的錯誤日誌就像飛機的黑盒子,能幫你找到問題的真正原因。
Nginx 環境的錯誤日誌通常在:
/var/log/nginx/error.log/var/log/nginx/你的網域名稱.error.log透過 SSH 登入伺服器後,用 tail -n 50 /var/log/nginx/error.log 查看最近的 50 筆錯誤。
Apache 環境的錯誤日誌路徑因作業系統而異:
/var/log/apache2/error.log/var/log/httpd/error_log以下是幾個與 502 相關的關鍵日誌訊息:
看到這些訊息後對照前面的 7 大原因,就能快速鎖定問題環節。如果你使用的是 SiteGround 或 Bluehost 等主流主機商,控制台通常也提供圖形化的日誌查看工具。
當所有自助方法都試過了,問題還是無法解決,就該找主機商了。好的主機商都有 24/7 技術支援,可以直接查看伺服器端日誌,幫你找出你看不到的問題。
聯繫客服之前,先準備好:502 開始出現的時間、之前是否做了任何變更(更新外掛、修改設定等)、已經嘗試過哪些排除方法。你也可以先到主機商的官方狀態頁面看看是否有公告維護或故障資訊。
修好一次 502 不難,難的是讓它不再出現。以下是幾個經過實戰驗證的預防措施。
這是最根本的解法。便宜的低品質主機是 502 的溫床:資源限制嚴格、伺服器超賣、技術支援慢。Bluehost 是 WordPress 官方推薦的主機商之一,價格合理且穩定性不錯。如果預算充裕,Kinsta 提供的 Google Cloud Platform 代管服務在效能和穩定性上都非常出色。A2 Hosting 在速度方面也有不錯的口碑。想全面比較各家方案,可以參考我們的 WordPress 虛擬主機推薦懶人包。
過時的版本除了有安全風險,也可能與新版 PHP 不相容而導致致命錯誤。養成每週檢查更新的習慣,更新前先備份。
你不可能 24 小時盯著自己的網站。透過 WP Umbrella 這類監控工具,當網站出現 502 或任何異常時,你會在第一時間收到通知。越早發現問題,就越能縮短網站無法訪問的時間。
網站效能不佳會加重伺服器負擔,間接增加 502 的風險。使用 WP Rocket 等快取外掛來減少動態請求量;啟用 GZIP 壓縮來減少傳輸量;將圖片轉換為 WebP 格式來降低載入成本。也可以參考我們整理的WordPress 網站速度最佳化教學和6 個實用加速技巧。如果你的TTFB 等待時間過長,也代表伺服器回應速度需要改善。
安裝了 30 個外掛的網站,衝突機率遠高於只裝 10 個的網站。定期審視安裝的外掛,把不再使用的停用並刪除,把功能重複的合併。不必要的留言功能也可以考慮關閉,減少伺服器處理負擔。
CDN 用得好能大幅提升網站速度,設定不當卻會造成 502。如果使用 Cloudflare,確保 DNS 記錄設定正確、SSL 模式選擇 Full Strict,並定期清除快取。預防 502 的核心邏輯就是讓 WordPress 環境保持健康、資源充足、設定正確。加強WordPress 安全性也是保護網站穩定運作的重要一環。
502 Bad Gateway 是 HTTP 狀態碼,代表閘道器或代理伺服器從上游伺服器接收到了無效的回應。在 WordPress 環境中,通常表示 Nginx 無法從 PHP-FPM 取得正確回應。
短時間的 502(幾分鐘到半小時)對 SEO 影響非常有限,Google 爬蟲會自動重試。但如果 502 持續好幾個小時甚至好幾天,Google 可能會把頁面暫時從索引中移除。網站載入速度和可用性本來就是排名因素的一部分,搭配 On-page SEO 最佳化策略一起維護,能讓網站更加穩健。
完全取決於觸發原因。如果是主機商基礎設施故障,通常幾分鐘到幾小時會修復。如果是暫時過載,等到流量降下來就會恢復。但如果是外掛衝突或設定錯誤造成的,不會自動恢復,需要手動排除。
先確認 502 頁面是否帶有 Cloudflare 標誌。如果是,問題可能出在 Cloudflare 無法連線到你的主機。暫時把 DNS 記錄從 Proxied(橘色雲朵)切換成 DNS Only(灰色雲朵),繞過 Cloudflare 直接訪問主機,看看問題是否依然存在。這能幫你區分是 Cloudflare 的問題還是主機的問題。
免費主機的資源限制非常嚴格,稍微多一點流量就容易觸發 502。如果你的網站有一定的流量或對穩定性有要求,建議升級到像 Bluehost 這類入門付費主機,穩定性和資源都會好上好幾倍。
幾個快速判斷方法:檢查主機商的官方狀態頁面看是否有故障公告;如果你有其他網站也放在同一家主機商,看看它們是否也 502;嘗試從不同網路環境和裝置訪問。如果同主機的所有網站都掛了,問題就在主機商;如果只有你的一個網站出問題,就要從網站本身找原因。