共計 539 個字符,預計需要花費 2 分鐘才能閱讀完成。
個人網站案例分享
在我自己的網站中, 有設置訪問頻率限制。當出現 520 錯誤時, 通常是因為: 客戶端至 CDN,CDN 至伺服器時檢測原 IP 訪問太多次, 被 WAF(Web Application Firewall) 封禁才導致的 520 錯誤。
以下是講解圖片:
_20250120_133302_0000-1024x576.webp)
會看到如下頁面

伺服器出現 520 Error 時,若沒用 CDN,則會出現以下畫面

Error 520 的通用原因解析
Error 520 是一個 Web 伺服器回應錯誤, 表示「未知錯誤」(Unknown Error)。這個錯誤通常發生在以下情況:
伺服器端配置問題
- 伺服器設置不合理
- PHP 或其他程式執行超時
- 伺服器資源不足
- 回應非標狀態碼(例如:434、444 錯誤)
更進一步:如果你伺服器有開啟真實 IP 模組,也可能導致 520!
有些主機會啟用像 ngx_http_realip_module 的功能,把 Cloudflare 傳來的真實 IP 替換掉原本的來源 IP。
這樣做雖然能讓日誌顯示出真正使用者的 IP,但如果你伺服器的防火牆剛好封鎖這些真實 IP(而不是 CF 的 IP),就會出現「拒絕回應」的狀況。
⚠️ 如果這個拒絕回應是用 return 444 或直接斷線、空白回應,Cloudflare 會判定這是未知錯誤 → 報錯 520。
常見解決方案
伺服端
- 檢查防火牆配置
- 檢查 nginx.conf 或其他的配置文件
探索更多來自 GEBU8F — 阿蒲的網站 的內容
訂閱即可透過電子郵件收到最新文章。
正文完
禁止人身攻擊,請理性發言。