如何修復WordPress中的白屏死機錯誤?

已發表: 2019-08-06
白屏死機
關注@Cloudways

如果您瀏覽過互聯網或管理過網站,您可能已經註意到,儘管您竭盡全力阻止錯誤,但錯誤是不可避免的。 但是一個好的網站管理員知道如何以最有效的方式評估情況並排除錯誤。

在許多可能導致 WordPress 網站癱瘓(並嚴重破壞業務)的錯誤中,白屏死機 (WSOD)可能是最煩人的,需要立即修復才能使網站重新上線。

現在,只需按照推薦的清單並使用適當的工具即可修復白屏死機。 如果您想自己解決此錯誤,請按照我演示的幾種有效方法來修復可能使 WordPress 網站癱瘓的白屏死機。

我們可以?

  • 什麼是白屏死機?
  • 解決 WordPress 中的白屏死機問題
      • 檢查服務器可用性
      • 清除瀏覽器緩存
      • 啟用調試模式
      • 增加內存限制
      • 禁用插件和主題
      • 解決語法錯誤
    • 恢復備份

什麼是白屏死機?

在找到可能的解決方法之前了解問題至關重要。 一個問題很可能有多種解決方案。 然而,找到提供最短和最有效修復的解決方案是首選,因為這樣的解決方案意味著在競爭中具有顯著優勢。

正如您可能猜到的那樣,WordPress 中的 WSOD 只顯示一個空白的白屏。 當管理員或某些帖子顯示白屏時,網站可能正常運行。 通常,此錯誤背後的罪魁禍首是受感染的 PHP 或數據庫文件。

然而,事情並不總是這麼簡單,有時根本原因更複雜。 因此,了解不止一種解決問題的方法至關重要!

解決 WordPress 中的白屏死機問題

讓我們深入探討一下如何解決 WordPress White Screen of Death 錯誤。

檢查服務器可用性

首先,使用isthiswebsitedown等在線狀態報告工具排除服務器不可用的可能性。 此工具可確定問題是由於瀏覽器緩存已滿/損壞或 IP 問題所致,還是由於託管服務器不可用而導致網站關閉。

如果服務器出現故障,請與您的託管服務提供商聯繫以盡快將其恢復在線狀態。 這是像 Cloudways 這樣的託管雲託管平台在競爭中脫穎而出的領域之一。

清除瀏覽器緩存

有時,只需清除瀏覽器緩存即可。 網站使用瀏覽器緩存來獲得更好的用戶體驗和更快的瀏覽速度。 但是,隨著時間的推移,緩存中會堆滿不再需要的數據和 cookie。

要解決此問題,只需轉到瀏覽器的設置並通過轉到所有 cookie 和站點數據[chrome://settings/siteData?search=cookie]來清除特定網站的緩存。

如果您希望刪除所有 cookie 和緩存,請導航到 Chrome 中的“歷史記錄”選項卡並清除數據。

該過程完成後,返回您的網站並點擊Refresh 。 如果您看到 wp-admin 屏幕,您就可以開始了。 如果問題仍然存在,請跳到下一步。

注意:上述過程也可以讓您退出某些網站或刪除數據。

啟用調試模式

如果清除瀏覽器緩存沒有幫助,下一個修復是啟用 WordPress 調試模式。 此模式突出顯示了有關導致 WordPress 白屏死機的錯誤的一些重要信息。

為了在 WordPress 中啟用調試模式,您需要訪問wp-config.php文件。 您可以通過登錄您的 CPanel 或使用 FileZilla(或類似的 FTP 客戶端)通過 SFTP 連接到您的服務器來訪問此文件。

在任何文本編輯器中打開文件並查找以下行:

 定義('WP_DEBUG',假) 

將其更改為

定義('WP-DEBUG',真)

保存更改並上傳更新的文件。 現在返回瀏覽器並刷新屏幕。 您仍然會看到死機白屏,但這次會顯示一條錯誤消息。

例如,您可能會看到如下內容:

 無法在 /var/www/html/wordpress/wp-content/plugins/my-plugin/my- 中重新聲明 get_posts()(之前在 /var/www/html/wordpress/wp-includes/post.php:1624 中聲明)第 21 行的 plugin.php

上述錯誤消息指出,其中一個插件的第 21 行出現錯誤。 此時,您可以聯繫插件提供商或用類似的東西替換插件。 如果這是不可能的,只需完全禁用WordPress 插件

增加內存限制

WordPress 運行在 PHP 之上。 因此,兩層都需要足夠的內存來執行。 有時限制會耗盡,導致出現白屏死機和500 內部服務器錯誤等錯誤

設置內存限制很容易。 如果您使用 Cloudways,請登錄您的平台帳戶並導航至Server ManagementSettings & Packages 。 在BASIC選項卡中,將 MEMORY LIMIT 從 64(默認)增加到 128 MB。

添加以下行:

 定義('WP_MEMORY_LIMIT','128M');

保存更改並上傳文件。

現在返回 wp-admin,刷新頁面並檢查錯誤是否仍然存在。 如果您仍然看到白屏死機,請深呼吸並嘗試下一個方法。

禁用插件和主題

這可能是最簡單的方法,並且通常是大多數故障排除指南中的第一步。 但是,我把它放在最後,因為這需要很多時間,並且可能會改變您的 WordPress 網站的外觀。

讓我們看看如何在不對 WordPress 網站造成任何損壞的情況下一一禁用主題和插件。

禁用主題

如果您可以訪問wp-admin ,禁用現有主題的最簡單方法是切換到默認的二十九主題。

登錄您的 WordPress 儀表板並轉到外觀主題並激活默認主題。

如果由於白屏死機錯誤而無法訪問wp-admin ,請使用 FileZilla 訪問您的服務器並將wp-content/themes文件夾重命名為my_themes 之類的內容

這將禁用現有主題,WordPress 會將其替換為默認主題。

禁用插件

您可以通過wp-admin輕鬆禁用所有插件並逐一激活它們以查看哪個插件導致白屏死機錯誤。

但是,如果您無法訪問wp-admin ,請再次使用 FileZilla 並重命名插件文件夾。 如果您的網站開始工作,請將文件夾重命名回plugins並通過逐一重命名每個插件開始單獨測試它們。

解決語法錯誤

開發人員和網站所有者經常在functions.php文件中添加自定義 PHP 代碼以添加/優化特定功能。 有時,添加代碼是為了集成第三方服務或增強現有功能,因為 WordPress 允許在需要時添加自定義代碼。

添加自定義代碼的推薦做法是對您在 functions.php 文件中所做的每項更改做筆記。 更好的是,保留原始文件的備份以避免此類問題。 如果您最近進行了任何更改,還原可能會使您擺脫這種情況。

恢復備份

進行備份是一種很好的做法,應該定期執行。 Cloudways 允許其客戶創建臨時站點。 如果您遇到諸如 WSOD 之類的任何令人沮喪的錯誤並且無法對其進行故障排除,則可以將這些站點上的數據拉到實時網站上。

您需要做的就是登錄您的 Cloudways 平台並轉到應用程序管理→ 登台管理。 從設置中,從臨時站點拉取更改。

如果您不在 Cloudways 上,您可以使用 WordPress 備份插件進行完整備份,並使用 cPanel 檢索WordPress 網站備份

最後的想法

現在,我希望您能夠修復 WordPress 中的白屏死機。 我們涵蓋了很多領域並討論了各種方法。 對錯誤進行故障排除沒有特定的順序。 作為網站管理員,您應該能夠分析錯誤,並且根據過去的事件,您應該能夠選擇正確的方法來解決 WSOD。

我很想知道對您有用的方法,以及是否有其他解決方案可以有效解決此錯誤。