WordPress 中的 503 錯誤:它是什麼以及如何修復它(2023 指南)

已發表: 2023-07-11

嘗試處理 WordPress 中的 503 錯誤?

當您的 WordPress 站點的服務器由於某種原因不可用時,會顯示 503 錯誤(又名 503 服務不可用錯誤)🐞。

這看起來可能是一個可怕的錯誤,但通過一些系統的故障排除可以找到錯誤的根源。 了解 WordPress 中出現 503 錯誤的原因以及如何修復該錯誤。 🔧

WordPress 中的 503 錯誤是什麼?

當您的 Web 服務器由於某種原因不可用時,會顯示 503 服務不可用錯誤。 不幸的是,該錯誤並沒有具體告訴您出了什麼問題,這意味著修復該錯誤可能需要一些時間。

根據託管設置和您的 Web 瀏覽器,您可能會看到此錯誤的以下變體之一:

  • 503服務不可用
  • 503服務暫時不可用
  • HTTP 服務器錯誤 503
  • HTTP 錯誤 503
  • 錯誤 503 服務不可用
  • 由於維護停機或容量問題,服務器暫時無法滿足您的請求。 請稍後再試。

當出現 503 錯誤時,您的整個網站將不可用,包括 WordPress 管理員。 🐛

是什麼導致 WordPress 出現 503 錯誤?

503 錯誤可能是由服務器維護、DDoS 攻擊、代碼片段、插件或主題中的錯誤代碼引起的; 或服務器上的流量過大,特別是當您使用資源有限的共享主機時。

如果 503 錯誤是由維護、DDoS 攻擊或流量激增引起的,它可能會在短時間內自行解決。 如果它是由錯誤的代碼引起的,則在您解決問題之前,它可能會再次發生。

如何修復 WordPress 中的 503 錯誤

在開始實施以下步驟之前,值得檢查一些事項。

首先,您是否在網站上運行過更新? 當您的網站處於維護模式時,可能會顯示 503 錯誤。 等待幾分鐘讓更新完成,然後刷新瀏覽器。

其次,檢查您的主機,確保您的服務器沒有發生中斷,或者正在進行計劃維護。 檢查主機的服務狀態頁面和電子郵件收件箱,看看您是否已收到問題通知。

WP 引擎服務狀態頁面。

如果您沒有運行更新並且您的主機沒有表明其服務器有問題,您可以開始執行以下故障排除步驟。

  • 停用插件
  • 切換到默認主題
  • 禁用內容分發網絡
  • 停用 WordPress 心跳 API
  • 啟用 wp_debug 模式
  • 升級您的託管計劃

停用插件

編碼錯誤的插件可能是 WordPress 中 503 錯誤的根源。 要檢查這一點,您將禁用所有插件並嘗試識別流氓插件。

由於您無法訪問 wp-admin,因此您需要使用 FTP 客戶端來訪問插件目錄(或 cPanel 文件管理器等工具)。

使用 FTP 連接到您的主目錄。 主目錄通常稱為以下目錄之一:

  • 公共_html
  • 萬維網
  • html
  • 民眾
  • 您網站的名稱

從主目錄導航到wp-content目錄並找到plugins目錄。

Web 服務器上的 WordPress 插件目錄。

右鍵單擊該目錄並使用重命名功能將其重命名為plugins_old

重命名plugins目錄以測試WordPress中的503錯誤。

現在您已經更改了目錄名稱,所有插件都將被停用。 檢查您的網站,查看 503 服務不可用錯誤是否仍然存在。

如果錯誤已經消失,則很可能是您的某個插件造成的。

要確定有問題的插件,請按照下列步驟操作:

  1. plugins_old目錄更改回plugins
  2. 導航到插件文件夾。
  3. 從列表中的第一個插件開始,重命名插件文件夾,例如,將antispam-bee更改為antispam-bee-test
  4. 檢查您的網站是否有 503 錯誤。 如果出現,您就知道哪個插件導致了錯誤。
測試各個插件以找出導致 WordPress 中出現 503 錯誤的插件。

現在,您需要保持該插件處於停用狀態並尋找替代方案。

切換到默認主題

503 錯誤的另一個可能來源是您的主題。 要測試這一點,您可以將站點切換到 WordPress 加載的默認主題之一,例如“二十二三”。

不幸的是,您不能使用與插件相同的技巧並重命名主題文件夾。 如果這樣做,WordPress 將拋出錯誤,指出The theme directory "[theme-name]" does not exist

相反,您需要使用phpMyAdmin訪問 WordPress 數據庫,並在那裡更改活動主題。

⚠️注意我們假設您的網站上仍然安裝了默認的二十二三主題。 如果您刪除了默認主題,您可能需要首先使用 FTP 安裝它 – 您可以手動將主題文件夾上傳到站點的wp-content/themes文件夾

通過主機控制面板登錄 phpMyAdmin,然後查找wp_options表。 根據您的主機,它可能具有與wp_不同的前綴 - 例如wpcz_options

單擊搜索鏈接並在表中搜索 option_name 字段中的單詞template

在 wp_options 表中搜索 option_name 之類的模板。

您應該得到一個結果。 雙擊 option_value(本例中為 genesis)並將主題重命名為二十二三。

選項名稱模板的搜索結果。

完成後應該是這樣的:

將 option_value 重命名為二十二三。

stylesheet option_name 重複相同的步驟。

現在您已經更新了活動主題,請訪問站點的前端以查看 503 服務不可用錯誤是否仍然存在。

如果錯誤似乎已清除,則問題很可能是您的主題造成的。

如果您可以選擇永久更改主題,請隨意這樣做。 否則,請聯繫您的主題提供商並向他們報告 503 錯誤。

最近可能有主題更新導致了錯誤,因此您可以恢復到主題的早期版本。 或者您可以下載修復該錯誤的更新版本。

禁用內容交付網絡(如果您正在使用)

如果您不使用 CDN,請跳過此步驟。 如果您是,請繼續閱讀。

有時 CDN 可能是 WordPress 中 503 錯誤的根源。 為了測試這一點,您的 CDN 應該有暫停服務的方法。 在 Cloudflare 上,您可以在“快速操作”菜單的“高級操作”部分中找到此選項,該菜單位於“概述”屏幕的右側(向下滾動即可看到)。

在站點上暫停 Cloudflare,檢查它是否導致 WordPress 中出現 503 錯誤。

如果暫停 CDN 解決了問題,您可能不想長期禁用 CDN,因此請聯繫您的提供商尋求幫助。

停用 WordPress 心跳 API

WordPress 心跳 API 控制 WordPress 上的幾個基本功能。 例如,以下動作是心跳控制的:

  • 自動保存帖子
  • 鎖定編輯器以防止兩個用戶同時編輯同一篇文章
  • 儀表板通知

心跳 API 將脈衝從客戶端發送到服務器,使用 AJAX 進行通信。 使用的文件是/wp-admin/admin-ajax.php。 這會導致向服務器發出大量請求,如果您使用共享主機且資源有限,這可能會成為問題。

要查看 WordPress 心跳 API 是否導致 WordPress 中出現 503 錯誤,您可以通過向活動主題的functions.php 文件添加一些代碼來臨時禁用它。

使用 FTP 編輯器訪問您的主題目錄。 右鍵單擊您的functions.php文件進行編輯(您可能希望先進行備份)。

如何編輯主題的functions.php 文件以檢查heartbeat API 是否導致WordPress 中出現503 錯誤。

在初始的後面添加以下代碼

add_action( 'init', 'stop_heartbeat', 1 ); function stop_heartbeat() { wp_deregister_script('heartbeat') }

保存對文件的更改,然後嘗試再次訪問您的網站以查看 503 錯誤是否仍然存在。 如果它消失了,您就知道是心跳 API 造成的。

不幸的是,禁用心跳 API 將停止許多有用的功能,因此最好限制心跳。 您可以使用心跳控制插件來執行此操作。 請記住首先從functions.php 中刪除禁用心跳的代碼。

啟用 wp_debug 模式

調試模式內置於 WordPress 中,作為排除錯誤的一種方法。 默認情況下未啟用它,因此您需要一些代碼來激活它。

使用 FTP 客戶端訪問wp-config.php文件。 編輯它並向其中添加以下代碼行:

 define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );

保存並重新上傳文件。

現在在您的 wp-content 目錄中查找名為debug.log的文件。 這會記錄在您網站上發現的所有錯誤。 日誌文件告訴您哪個文件導致每個錯誤以及負責的代碼行。 debug.log 文件不會告訴您導致 WordPress 中出現 503 錯誤的原因,但它會為您提供下一步查看位置的線索。

您還可以查找 Web 服務器的調試日誌,通常可以在此處找到:

  • 阿帕奇:/var/log/apache2/error.log
  • Nginx:/var/log/nginx/error.log

如果需要,請聯繫您的託管提供商以獲取解釋日誌文件的更多幫助。

升級您的託管計劃

如果您無法查明 503 錯誤的根源,但懷疑是您的託管造成的,您可能需要考慮升級您的託管計劃。 這尤其適用於以下幾種情況:

  1. 您正在使用共享主機,並且您的服務器資源正在超支。
  2. 您的網站越來越受歡迎,您的流量也隨之增加。

如果您使用共享託管,可能是時候考慮託管託管了。 與您的託管提供商討論升級您的計劃。 在某些情況下,您可能希望完全切換網絡主機。

👉 請參閱我們最好的網絡託管指南,了解我們對不同類型的託管的建議。

轉到頂部

永久修復 WordPress 中的 503 錯誤 🎯

如果您在 WordPress 中看到 503 錯誤,請不要驚慌。 故障排除步驟為:

  • 停用插件
  • 切換到默認主題
  • 如果使用則禁用 CDN
  • 停用 WordPress 心跳 API
  • 啟用 wp_debug 模式
  • 升級您的託管計劃

📌 希望這些步驟能夠幫助您發現 503 錯誤的根源並結束您的痛苦。