- 錯誤型別:
- WP內部錯誤
- 錯誤名稱:
- REST API遇到了错误
- 英文名稱:
- cURL error 28
- 錯誤描述:
- 无法及时响应服务器的数据请求会导致WordPress中出现“cURL error 28”报错。
“cURL error 28” 是常見的WordPress REST API問題,可能會影響網站的效能,並可能導致網站執行異常。
在本教程中,將詳細介紹如何解決WordPress網站上的“cURL error 28: Connection timed out”問題。
WordPress的cURL是什麼?
cURL是WordPress和許多其他Web應用使用的軟體實用工具,用於使用URL傳送和接收資料請求。
WordPress使用cURL處理多個API請求。它可以作為PHP程式語言的擴充套件使用,WordPress託管服務會為此提供幫助。
cURL庫在WordPress後臺工作中起著至關重要的作用。如果未正確配置,則WordPress網站將無法正常執行。
什麼導致WordPress發生“cURL error 28”?
無法及時響應伺服器的資料請求會導致WordPress中出現“cURL error 28”報錯。
WordPress使用REST API(一種程式設計技術)來傳送和接收資料請求。如果這些請求超時,那麼您將在“站點執行狀況”報告中將其視為標題為“REST API遇到了錯誤”的關鍵問題。
如果你展開該問題可以檢視更多詳細資訊,包括錯誤訊息:
Error: cURL error 28: Operation timed out after x milliseconds with x bytes received (http_request_failed)
您可能還會看到標題為“您的站點不能完成環回請求”的另一個相關問題。它將顯示類似的錯誤訊息,具體描述如下。
“到您站點的環回請求失敗,這意味著依賴此種請求的功能將不能正常工作。”
什麼可能導致cURL超時?
許多情況可能導致WordPress發生cURL超時。
例如,WordPress防火牆外掛可能會將其視為可疑活動而阻止REST API請求。
如果您的DNS伺服器無法正常工作,則這也可能導致HTTP請求失敗並導致WordPress出現cURL超時錯誤。
WordPress託管伺服器配置不當-設定較低超時閾值,這也可能會阻止某些WordPress程序正常執行。
既然我們大致知道導致cURL錯誤的原因,那麼要解決話“curl error 28: Connection timed out”問題就不應該是一件難事了。
1. 暫時禁用WordPress防火牆
如果安裝了WordPress防火牆或安全外掛,可以暫時將其停用。
然後,訪問WordPress網站後臺-工具-站點健康,檢視問題是否已解決。
如果發現問題已解決,則需要檢查WordPress防火牆日誌以檢視哪些API請求已被阻止。
以幫助您確定問題的根源,進一步調整防火牆設定以不阻止合法的API請求。
2. 禁用所有WordPress外掛
WordPress外掛自身產生API請求以傳送和接收資料。如果這些呼叫過於頻繁或耗時太長才能完成,則可能會導致站點健康中出現cURL錯誤。
解決此問題的最簡單方法是停用所有WordPress外掛。只需轉到“外掛»已安裝外掛”頁面,然後勾選所有外掛。
之後,點選批量操作下拉選單選擇“禁用”,然後點選“應用”按鈕。
再次訪問“站點健康”報告,以檢視問題是否已消失。如果這解決了問題,那麼您可以嘗試逐個啟用外掛,直到問題再次出現,即可找到問題外掛。
聯絡外掛開發者解決問題,又或者使用替代品。
3. 確保伺服器正在使用最新版本軟體
下一步是確保WordPress伺服器使用最新版本的PHP,cURL庫和OpenSSL。
您可以通過檢視“工具”»“站點健康”頁面下的系統資訊選項卡來進行檢查。
只需切換到“資訊”標籤,然後展開“伺服器”部分。即可獲取有關WordPress伺服器上安裝的軟體的資訊。
理想情況下,伺服器應使用PHP 7.4.13或更高版本,curl 7.74.0或更高版本以及OpenSSL 1.1.1或更高版本。
如果沒有,那麼自行進行版本升級或者聯絡伺服器提供商城升級。注:VPS伺服器一般可以自行進行升級操作,虛擬主機則可能要依賴伺服器提供商。
4. 修復SSL不安全內容問題
如果您的WordPress網站使用HTTPS/SSL,但配置不正確,這也可能導致Web伺服器阻止不安全的cURL請求。
同樣,如果WordPress網站未使用HTTPS/SSL,但是使用HTTPs URL進行了API呼叫,那麼這些請求也會失敗,並且您可能會看到以下cURL錯誤:
Error: cURL error 7: Failed to connect to localhost port 443: Connection refused (http_request_failed)
要解決此問題,您可以要求託管服務提供商或者自行為您的網站重新安裝SSL證書。如果問題仍然存在,進一步檢視常見的SSL問題,正確設定網站SSL。
5.向伺服器提供商尋求幫助
如果上述步驟未能解決WordPress網站上的cURL錯誤28,則該問題很可能是伺服器環境問題。
有許多因素只能由伺服器提供商控制和修復。例如,如果其DNS伺服器無法及時解析請求,則這將導致cURL請求超時。
另一種情況可能是主機伺服器的連線速度慢或網路問題。
只需向他們傳送帶有錯誤詳細資訊的支援請求,他們的技術人員就可以進行故障排除並應用修復程式來解決。
評論留言
脣槍舌劍 (2)
布达拉宫
2021.10.15 07:10
cURL error 52 怎么处理
WBOLT_COM
2021.10.15 10:10
上述操作也合适的哦!