- 錯誤型別:
- 伺服器錯誤
- 錯誤名稱:
- Cloudflare 522错误
- 英文名稱:
- Error 522
- 錯誤描述:
- 该错误可能由服务器过载,防火墙拦截Cloudflare请求,IP地址不正确和KeepAlive已禁用导致,而非Cloudflare本身出现问题。
- 錯誤變體:
- Connection timed out
Error 522:連線超時訊息是使用Cloudflare的網站常見的伺服器端問題。在本文中,我們將找出導致錯誤522的原因以及如何修復它。
確保您具有伺服器管理員的訪問許可權,因為這是伺服器錯誤,因為唯一的其他選擇是聯絡網站所有者。但是,如果您有權訪問原始伺服器,請繼續閱讀以瞭解解決此問題的三種方法。
我們還將分享如何解決其他相關問題,以避免遇到任何其他Cloudflare錯誤。
Cloudflare Error 522的原因是什麼?
Cloudflare Error 522:連線超時訊息是HTTP狀態程式碼。內容交付網路( CDN) 服務,如Cloudflare,可加快瀏覽器使用者與網站源伺服器之間的網路連線。但是,有時伺服器無法在指定時間內響應。
此問題還意味著Web伺服器和Cloudflare之間的傳輸控制協議(TCP) 握手失敗。每當此CDN服務接收到使用者請求時,TCP握手對於建立連線至關重要。
那麼,為什麼源站伺服器沒有及時響應呢?以下是連線超時背後的一些最常見原因:
- 伺服器過載。當源站伺服器面臨太多請求時,它無法及時響應。
- 防火牆攔截Cloudflare請求。一些網路託管服務提供商具有防火牆功能,可能會阻止Cloudflare IP地址,這些IP地址會標記來自CDN的請求。
- IP地址不正確。您的域名系統(DNS) 上的地址與Cloudflare上的地址不匹配。
- KeepAlive已禁用。Cloudflare預設啟用KeepAlive訊息。如果它們被禁用,則連線設定將失敗。
這些情況中的任何一種都可能導致您網站上出現錯誤522。大多數瀏覽器會顯示相同的影象和訊息,表明問題出在網路主機上。
重要的!請注意,此錯誤不是由任何Cloudflare故障引起的。此外,無論您使用高階版還是免費版,都可能發生此問題。
修復錯誤522:連線超時的3個步驟
對於修復錯誤522:連線超時問題的每個步驟,我們還將分享如何檢查錯誤背後的具體原因。
重要的!首先,檢查網站是否對所有人都已關閉,並確保Cloudflare系統狀態正常執行,然後再繼續執行這些步驟。
1.檢查Web伺服器是否工作
Cloudflare 522錯誤背後的一個常見原因是Web伺服器無法處理HTTP請求,因為它已經不堪重負。此問題經常發生在共享託管伺服器上。要解決此錯誤訊息,請檢查源Web伺服器是否處於活動狀態並接受HTTP請求。
有多種方法可以檢查您網站的源Web伺服器,包括使用適用於Linux的Packet Internet Groper (PING) 命令或適用於Windows的Traceroute。Linux和Windows都使用PING命令來檢查您網站伺服器的連線狀態。
您的原始伺服器無法正常工作的另一個原因可能是您網站的請求負載很高。因此,請檢查您的伺服器使用情況以避免達到任何限制。
- CPU使用率——指中央處理單元 (CPU) 的消耗。將其保持在80%以下以避免效能不佳。
- 記憶體限制– 帳戶處理的記憶體量。
- 程序– 帳戶中所有程序的總數。
- 頻寬——在固定時間內傳輸的資料量。
達到任何這些指標的最大閾值都會減慢網站速度並導致此錯誤。要確定您是否已達到限制,請檢查紫線是否與圖表上的紅線接觸。
以下是一些提高效能和優化伺服器容量的方法:
- 更少的外掛。一些外掛建立了比相應資料庫所需的更多查詢,從而在源伺服器上產生高負載。刪除不必要的外掛以避免使用過多的伺服器資源。
- 修改程式碼。優化不佳的程式碼會導致CPU使用率過高。如果您對編輯網站程式碼感到滿意,請考慮修改它以獲得更快的效能。
- 升級或更改託管計劃。當您接近達到記憶體限制時,升級您的伺服器主機計劃或切換到不同型別的伺服器主機。
另外,檢查是否有正在進行的維護,如果有,請等待維護結束,速度恢復正常。
2. 檢視Cloudflare DNS設定
Cloudflare將在整合到域時匯入所有DNS記錄。其中一條記錄是地址記錄(A Record),負責將域與源Web伺服器的IP地址連線起來。
因此,IP地址不匹配會導致522錯誤:連線超時訊息。伺服器和Cloudflare上的A記錄必須匹配才能避免此問題。開啟DNS區域編輯器並檢查A記錄以解決此問題。
訪問域名解析服務管理面板下的DNS Zone編輯器。在DNS設定中,記下Content下Type A旁邊的IP地址。
接下來,前往您的Cloudflare配置選單並單擊DNS按鈕。在它下面,檢查Type A旁邊的IP地址。確保兩個DNS伺服器上的IP地址相同。
如果A記錄不同,請在Cloudflare的DNS設定中更改它們。單擊新增記錄按鈕並將主機伺服器的IP地址插入IPv4地址框中。單擊“儲存”按鈕以處理更改。
此操作應修復錯誤522:連線超時問題。請注意,DNS更新最長可能需要24小時才能傳播。但是,清除Cloudflare快取可以加快處理速度。
另一個需要仔細檢查的DNS設定是Cloudflare加密模式。我們建議將加密模式設定為Full,以防止此問題再次發生。
3. 瀏覽其他Web伺服器設定
解決此問題的另一個解決方案是檢查網站的伺服器設定。特別是,看看這三個:
啟用KeepAlive
Cloudflare使用KeepAlive標頭條目來維護與 Web 伺服器的已建立連線。KeepAlive是保持TCP連線與HTTP請求保持開啟狀態的指令。
由於連線失敗,在源站Web伺服器中禁用KeepAlive訊息頭會導致錯誤522。因此,始終啟用KeepAlive標頭以減少伺服器的CPU和記憶體使用量。要使用此方法,請確保有權訪問以下檔案之一:
- .htaccess –超文字訪問有助於為Apache Web伺服器上的網站配置附加功能。寶塔面板使用者可以在檔案管理器中找到該檔案。
- nginx.conf –開源Web伺服器軟體NGINX的主要配置檔案。
要演示如何啟用KeepAlive標頭,請將以下程式碼新增到.htaccess檔案中:
<ifModule mod_headers.c> Header set Connection keep-alive </ifModule>
允許Cloudflare IP
522 HTTP錯誤背後的另一個原因是防火牆功能攔截了Cloudflare的IP地址 – 請務必檢查主機提供商的IP過濾以允許來自Cloudflare IP的請求。
如果您的伺服器提供IP管理器來授予訪問許可權或阻止特定的網址。前往IP Manager以控制您站點的IP路由。在Allow an IP Address部分下包括Cloudflare IP ,然後單擊Add。
如果您的控制面板沒有IP管理器,請使用檔案管理器中的.htaccess檔案。新增程式碼allow from並在兩行之間插入Cloudflare的IP地址:
#請勿刪除此行
程式碼將如下圖所示。
這些更改將允許伺服器接受Cloudflare請求並應修復錯誤訊息。
禁用Cloudflare
如果前面的方法都不起作用,請暫時禁用此CDN服務。要再次使用CDN,再重新啟動您的Cloudflare帳戶即可。
排查其他Cloudflare錯誤
Cloudflare使用者可能會收到其他HTTP狀態訊息。例如,錯誤520:Web伺服器正在返回未知錯誤。此問題的常見原因是源Web伺服器崩潰或Cloudflare不相容的響應標頭。
錯誤520的故障排除步驟包括:
- 確保Cloudflare DNS記錄正確。
- 禁用您的.htaccess檔案。
- 檢查標題和cookie。
另一個可能的問題是Error 521: Web server is down,通常是由於Cloudflare加密設定不佳或伺服器無法訪問。以下是解決錯誤521的一些方法:
- 確保源伺服器正在執行。
- 測試與伺服器的連線。
- 檢查加密設定。
如果這些問題仍然存在,我們建議您聯絡Cloudflare支援服務。
小結
當伺服器響應請求的時間超過指定時間時,會發生Cloudflare 522錯誤。此問題背後的一些常見原因是記憶體或CPU不足、防火牆攔截IP地址以及禁用的KeepAlive標頭。
讓我們回顧一下解決此問題的三種方法:
- 檢查您的連線和記憶體。
- 檢視Cloudflare DNS設定。
- 配置您的伺服器設定。
評論留言