WordPress 中的 504 錯誤:如何修復

已發表: 2023-10-26

您的網站是否遇到 504 錯誤? 可怕的事情,不是嗎?

當你經營一家企業時,永遠不會缺少可能出錯的事情。 造成這種現象的因素很多,包括人為因素、技術因素,甚至環境因素。

當您將網站添加到其中時,災難的機會就不會停止。 您有潛在的安全漏洞、未偵測到的停機時間,甚至是糟糕的 UI/UX 設計等。

然而,假設你一切都做得很完美。 您擁有一個載入速度快的安全網站。

搜尋引擎將其排名在第一個結果頁面上。 然後您會收到“發生錯誤(狀態:504)”。 怎麼辦? 您開始在 Google 上提問,「什麼是 504 錯誤?」、「什麼是 504 網關逾時?」、「網關逾時是什麼意思?」以及「504 網關逾時是什麼意思?」。

什麼是 504 錯誤?

在我們了解錯誤本身之前,了解它們是如何生成的非常重要。 當您啟動瀏覽器並造訪某個網站時,它會向其託管的 Web 伺服器發送請求。

然後,該伺服器處理該請求並將您請求的內容與 HTTP 標頭一起傳回。 此標頭具有多種狀態代碼之一,用於在一切正常或存在問題時進行通訊。 並非每個代碼都是壞的 - 200 狀態代碼意味著沒有任何問題。

就504錯誤而言,500狀態錯誤代碼有幾種,例如500、501、503、504,它們都有不同的意義。 它們表明請求已被接受,但伺服器阻止了請求的完成。

在這種情況下,504網關逾時表示伺服器在等待另一台伺服器回應時逾時。 當請求涉及兩台伺服器並且第一個伺服器在等待第二個伺服器回應時逾時時,您可能會收到 504 錯誤閘道。

504 狀態代碼對您來說可能是什麼樣的

有些個別網站可以自由自訂 504 錯誤代碼的顯示方式,但最常見的方式是:

  • 504網關逾時
  • 504錯誤
  • 網關逾時 (504)
  • HTTP 504

該錯誤將顯示在瀏覽器視窗內,就像正常的網頁一樣。 您可能會看到頁首和頁腳,以及一條不錯的訊息,或者您可能會看到一個全白的頁面,並且頂部只有 504。 無論該特定網站如何顯示,它都是相同的訊息。

504錯誤的詳細信息

如前所述,您的網站上隨時可能會顯示不同的 HTTP 狀態碼。 例如,200 個狀態代碼表示一切正常。 300 狀態碼表示正在發生 URL 重新導向。

400 狀態代碼會讓您知道最終使用者或「客戶端」出現錯誤。 在這種情況下,瀏覽器、防火牆、網際網路連線或代理設定有問題。 500狀態碼,例如504網關錯誤,意味著網站的伺服器有問題。

當出現 504 錯誤代碼時,您很可能會失去與網站的連接,或無法連接到網站。 這意味著網站的伺服器確實收到了請求,但無法回應該請求,因為處理時間太長,而且逾時。

當您想要解決網站上的 504 錯誤時,如果您想縮小問題根源,請注意措詞。 如果您有「NGINX」或某些特定網路主機或 CDN 提供者的名稱,則問題出在主機方面,您應該聯絡他們,以便他們可以解決問題。

另一方面,如果錯誤訊息是通用的,則問題可能出在您自己的配置上。 最常見的原因是伺服器沒有足夠的記憶體或頻寬來滿足請求。 為了修復此錯誤,您需要相應地擴展資源。

如何修復網站上的 504 網關逾時錯誤?

如上所述,確定此類錯誤的責任方實際上很簡單。 該錯誤代碼表示伺服器端錯誤,因此要么是您的問題,要么是主機的問題。 然而,實際上有許多原因導致伺服器無法傳遞請求並拋出 504 作為返回。

這只是暫時的嗎?

如果您自己發現了該錯誤,並且沒有其他人報告該錯誤,請刷新網站。 然後,清除瀏覽器快取。 如果網站返回,可能只是伺服器暫時出現故障,但您確實需要密切關注,以確保這種情況不會更頻繁地發生。

您是否存在安全漏洞?

如果錯誤不是暫時的,您需要確保沒有安全威脅,例如 DDoS 或類似的威脅。 檢查您的安全插件,看看它們是否捕獲了某些東西。 如果您聘請了安全提供者來管理此問題,請與他們聯絡。 無論哪種方式,您都需要排除這種情況,因為這裡的危險不僅僅是伺服器故障。

最近的遷移可能是原因嗎?

如今,遷移網站相當普遍,並且成功完成並不是一件困難的事情。 但是,有些遷移(有些甚至像從 HTTP 遷移到 HTTPS 一樣簡單)可能會導致臨時 504 錯誤。

發生這種情況是因為 DNS 記錄尚未完全傳播。 在此之前,您的網站將給出 504 錯誤。 如果一段時間後問題仍未解決,您將需要快取客戶端 DNS 伺服器。

可以是資料庫嗎?

如果您認為應該歸咎於 MySQL 資料庫,請使用外掛程式來修復它。 WP-DBManager 是一個很好的建議,已經被證明是有效的。

您修改過資料庫檔案嗎?

如果有,這可能就是問題所在。 這不是整個資料庫的問題,但如果其中一個文件中的某些內容被不當修改,則可能會導致服務中斷。 要查看的特定檔案是.htaccess檔案 - 將其回滾到先前的版本,即更新先前的版本,然後查看是否解決了問題。

您安裝了新主題或外掛嗎?

如果您在線上搜尋過 504 錯誤主題,您會發現插件經常被歸咎於此。 這確實有道理——如果您沒有花足夠的時間仔細檢查它們,新的插件或主題可能會導致 504 錯誤。

如果您可以找出錯誤開始出現的時間,您就知道在哪裡新增外掛程式或進行升級。 如果您認為是您當時安裝的插件造成的,請將其停用,然後查看問題是否仍然存在。 如果這還不行,請嘗試對所有插件執行此操作,一次一個。 伺服器回應時間減慢可能是由於快取或更新不當的插件造成的。

CDN 可能是罪魁禍首

當客戶端出現 400 問題時,一種流行的故障排除方法是停用代理程式。 這是因為代理實際上可能會阻止伺服器將檔案傳送到您的瀏覽器視窗。

然而,我們這裡有一個 500 錯誤,問題出在你身上,而不是客戶端。 代理可能導致問題的唯一原因是 CDN 以某種方式或另一種方式阻礙了連接。 如果是這種情況,您會發現錯誤在通知中的某處包含 CDN 提供者的名稱,您應該聯絡他們尋求協助。

WordPress 504 錯誤常見問題解答

為什麼我的 WordPress 網站上不斷出現504 網關逾時

好吧,當一台伺服器沒有及時收到另一台伺服器的回應時,通常會彈出此錯誤。 這就像打電話給朋友而他們不接聽一樣。

這可能是由於伺服器配置錯誤、網站託管問題,甚至是內容交付網路 (CDN)出現問題。 我知道這很令人沮喪。

504 錯誤和其他HTTP 狀態碼有什麼差別?

啊,好問題! 所以,504只是眾多程式碼之一。 雖然它表示網關逾時,但其他如 500 表示存在內部伺服器錯誤,而 502 表示網關錯誤

這就像是伺服器用來告訴我們發生了什麼事的秘密語言。 每個都有自己的意義,在對 WordPress 進行故障排除時了解其中的差異非常重要。

有問題的WordPress 外掛會導致此錯誤嗎?

絕對地! 有時,流氓插件可能是罪魁禍首。 如果程式碼編寫不當或與網站的其他部分無法很好地配合,則可能會導致 504。

這就像在水果沙拉中添加一個壞蘋果; 它破壞了這群人。 如果您遇到此錯誤,請務必檢查您的外掛程式。

主題衝突如何導致 504 錯誤?

主題就像 WordPress 網站的服裝。 有時,它們會與外掛甚至核心 WordPress 軟體發生衝突。 當他們這樣做時,砰! 您可能會收到 504。確保您的主題已更新並與您正在使用的其他所有內容相容至關重要。

為什麼我的資料庫連線很重要?

將資料庫視為 WordPress 網站的大腦。 如果連線出現問題,您的網站可能會出現問題,導致錯誤,包括可怕的 504。請務必確保您的資料庫連線設定正確。

Web 伺服器設定如何把事情弄亂?

伺服器就像網站的機房。 如果設定出現問題,無論是 Apache、Nginx 或其他軟體,都可能導致 504 錯誤。 這就像搭帳篷一樣; 如果你做得不對,它就會崩潰。

PHP 逾時是怎麼回事?

PHP 腳本是讓您的網站正常運作的魔法。 但如果它們花費的時間太長,它們可能會超時,導致 504。這就像永遠在隊列中等待一樣; 在某些時候,你就會放棄。 確保腳本高效運行至關重要。

反向代理如何適應這一切?

像 Nginx 這樣的伺服器可以充當反向代理,引導網路流量。 如果此處配置錯誤,可能會導致 504 錯誤。 想像一下,它是一名指揮車輛的交警; 如果他們給你指明了錯誤的方向,你最終就會迷路。

防火牆設定可能是偷偷摸摸的原因嗎?

哦,當然! 防火牆就像網路世界的保鑣。 如果它們阻止必要的連接,您可能會遇到 504 錯誤。 請務必仔細檢查您的設置,以確保它們不會過於嚴格。

DNS 問題如何導致 504?

DNS 就像網際網路的電話簿。 如果出現問題,您的網站可能無法正確連接,導致各種錯誤,包括 504。請務必確保您的 DNS 設定準確且最新。

結束對 504 錯誤的思考

正如您所看到的,您的網站上不乏嘗試修復此類錯誤的方法。 它們通常是伺服器端的,您可以聯絡您的主機來修復問題。 但是,您應該知道它們也可能是由外掛甚至主題以及壓垮 PHP 工作佇列或積壓造成的。

如果您喜歡閱讀這篇關於如何修復 504 錯誤的文章,您應該查看這篇關於如何修復 WordPress 白屏死機的文章。

我們也寫了一些相關主題,例如修復上傳圖片時的 WordPress http 錯誤、如何修復過多的重定向、如何修復 WordPress 不發送電子郵件、如何修復 err_ssl_version_or_cipher_mismatch 以及修復 502 bad gateway 錯誤。