如何修復 WordPress 中的“503 錯誤”(逐步)
已發表: 2022-01-26您是否在 WordPress 網站上遇到過 503 錯誤? 這是一個常見的 WordPress 錯誤,可以按照我們今天教程中介紹的步驟進行修復。
其中一些步驟可能看起來很技術,但實際上它們不需要任何深厚的技術知識。
在本文中,我們將首先討論導致 WordPress 中 503 錯誤的原因,然後我們將向您展示所有潛在的解決方案以及如何防止將來遇到 503 錯誤。
讓我們潛入吧!
什麼是 503 錯誤? 是什麼原因造成的?
當您的網站服務器無法訪問時,就會出現 503 錯誤——即服務器不可用。 不可用的原因可能是錯誤編碼的插件或主題、流氓代碼片段、服務器故障、DDoS 攻擊或整體託管服務的質量問題。
讓我們更深入地了解每個原因:
這些是導致 WordPress 網站出現 503 錯誤的典型原因。
值得注意的是,該錯誤有幾種不同的變體:
- “503服務不可用”
- “503服務暫時不可用”
- “HTTP 服務器錯誤 503”
- “HTTP 錯誤 503”
- “錯誤 503 服務不可用”
- “由於維護停機或容量問題,服務器暫時無法滿足您的請求。 請稍後再試。”
我們在下面介紹的解決方案應該可以修復 WordPress 網站上的任何 503 錯誤。
如何修復 503 錯誤(WordPress)
對您有用的確切修復取決於根本原因。 503 錯誤本身並沒有為您提供太多信息。 因此,在本節中,我們將向您展示一些要遵循的步驟,以便查明原因並修復它。
在我們深入研究解決方案之前,請確保您正在執行以下初步步驟:
當您更新插件或主題時,也會出現 503 錯誤 WordPress。 您可能需要再次檢查您的網站,看看這是否是臨時問題。 只需確保在檢查站點之前清除緩存即可。
正如我之前提到的,有時會因為您的 Web 服務器上的維護工作而發生 503 錯誤。 您的託管服務提供商必須通過電子郵件通知您。 在典型的維護警報中,您會被告知服務器預計會關閉多長時間。 所以檢查你的電子郵件。
如果在您向網站添加代碼片段後立即出現錯誤,那麼您知道罪魁禍首是誰。 刪除代碼,您的網站應該恢復正常。 但是,如果您無法訪問儀表板,我們建議您恢復網站的備份。 您的託管服務提供商應該能夠幫助您解決這個問題。
什麼都沒用? 那麼讓我們試試下面的步驟。
1.暫時停用插件
503 錯誤通常是由您在站點上安裝的插件引起的。 要確定是否是插件導致了錯誤,您只需暫時禁用所有插件。
503 錯誤會阻止您訪問儀表板,因此您必須使用像 FileZilla 這樣的 FTP 客戶端。
打開 FileZilla,連接到您的站點,然後導航到public_html目錄。 打開文件夾並導航到wp-content 。 在此目錄中,您會找到另一個名為plugins的目錄。 它包含您網站的所有插件(活動和非活動)。 將插件目錄重命名為plugins_
或其他任何名稱。 這將停用您網站上的每個插件。
再次返回您的站點,查看 503 錯誤是否消失。 如果是,那麼可以安全地假設是插件導致了錯誤。
現在,是時候查明導致問題的確切插件了。
返回 FileZilla,將插件目錄的名稱改回原來的(“插件”)。 進入並開始一個一個地處理所有插件。 做這個:
- 將目錄中第一個插件的名稱更改為其他名稱。
- 檢查網站以查看錯誤是否消失。
- 如果它確實消失了,那麼您已經找到了罪魁禍首。 如果不是,請改回第一個插件的名稱,然後以相同的方式繼續測試下一個插件。
- 重複直到找到導致問題的插件。
找到導致錯誤的插件後,最好將其刪除並尋找替代方法。 如果您的插件都沒有導致 503 錯誤,請嘗試下一個解決方案。
2.暫時停用您的主題
停用主題有點棘手,因為您不能像我們對插件文件夾所做的那樣簡單地重命名主題文件夾。 它會導致它自己的錯誤。
所以這就是您需要做的:登錄您的主機帳戶,轉到cPanel部分並打開phpMyAdmin 。
選擇wp_options並轉到Search 。 在option_name 下,編寫template
並單擊Go 。
系統將運行搜索,然後在option_value下顯示您當前的主題。 選擇“編輯”並將當前主題更改為“ twentytwentyone
。
如果這修復了錯誤,那麼您可能想要嘗試獲取主題的早期版本(一個有效的),安裝它,然後等待主題的開發人員發布更新。 或者,如果可以的話,您可以完全切換到不同的主題。
3. 暫時禁用您的 CDN
有時,已知 CDN 會導致 503 錯誤,因此禁用它(如果您的站點上有一個在工作)可能是一種快速的解決方案。 所有 CDN 都有一些選項允許您手動暫停它們。 例如,在 Cloudflare 上,您需要登錄您的帳戶,選擇您的網站,然後單擊Pause Cloudflare on site選項。
接下來,檢查您的網站,如果 503 錯誤仍然存在,請取消暫停 CDN 並嘗試下一個解決方案。
4.限制WordPress心跳API
Heartbeat API 負責幾個基本功能,例如自動保存帖子、顯示插件通知、防止您在其他人修改帖子時訪問帖子等。
API 使用您的服務器資源來執行這些功能。 如果您的服務器無法處理 API 的需求,它將拋出 503 錯誤。 要確定 Heartbeat API 是否導致錯誤,您需要暫時禁用它。
打開您的 FTP 客戶端 (FileZilla),連接到您的網站並轉到public_html → wp-content → 主題。 打開當前主題目錄並下載functions.php文件的副本,然後對其進行編輯。
在開始<?php
標記之後添加以下代碼片段:
add_action( 'init', 'stop_heartbeat', 1 ); function stop_heartbeat() { wp_deregister_script('heartbeat') }
保存文件,重新上傳,然後檢查您的網站。 如果錯誤消失,那麼你已經抓住了罪魁禍首。
但請記住,Heartbeat API 是必不可少的,因此您不能長期禁用它。 如果您願意,可以通過安裝 Heartbeat 控制插件來減慢其頻率。 只需確保在設置插件之前從 functions.php 文件中刪除代碼片段即可。
5.啟用WP_DEBUG
當所有其他解決方案都失敗時,啟用調試模式可以為您提供答案。
您可以使用插件或修改 wp-config 文件來啟用調試模式。
由於 503 錯誤會阻止您訪問儀表板,因此安裝插件是不可能的。 所以你必須修改 wp-config 文件手動。
打開您的 FTP 客戶端 (FileZilla),轉到public_html → wp-config.php並下載該文件的副本,然後對其進行編輯。 將以下代碼段插入其中:
define( 'WP_DEBUG', true ); define( 'WP_DEBUG_LOG', true ); define( 'WP_DEBUG_DISPLAY', false );
保存文件並重新上傳。
現在轉到wp-content目錄,您應該在其中找到一個debug.log文件。
日誌文件包含您的網站遇到的錯誤。 它將向您顯示錯誤的原因以及導致錯誤的特定代碼行。 您不會找到 503 錯誤的直接指示,因此我們建議將日誌顯示給您的託管服務提供商並尋求幫助。
至此,您應該對 503 WordPress 錯誤有了解決方案。 但是,您應該確保它以後不會再出現在您的網站上。
將來防止 503 錯誤 WordPress
您可以按照以下說明防止 503 錯誤出現在您的網站上:
- 使用來自 WordPress 存儲庫或受信任的開發人員(如 Themeisle)的主題和插件。 閱讀如何選擇主題以及如何選擇插件以獲取更多信息。
- 如果您的網站需要更多資源才能正常運行,請轉向更好的託管計劃。
- 使用防火牆來防止 DDoS 攻擊。
- 在臨時站點上安裝或更新插件,然後在實時站點上執行它們。
就是這樣的人! 至此,我們到了本文的結尾。
我希望您發現本指南易於遵循且對您有所幫助。 如果您有任何疑問,請在下面的評論中告訴我們。