如何修復 WordPress 中的 500 內部服務器錯誤

已發表: 2023-03-18

您是否在 WordPress 中看到 500 內部服務器錯誤?

內部服務器錯誤是最常見的 WordPress 錯誤之一。 由於該錯誤沒有提供任何其他信息,因此許多初學者感到非常沮喪。

在本文中,我們將向您展示如何輕鬆修復 WordPress 中的 500 內部服務器錯誤。

Fixing the internal server error in WordPress

以下是我們將在本文中涵蓋的主題的快速概述。

  • 500 內部服務器錯誤是什麼?
  • 是什麼導致 WordPress 中的內部服務器錯誤?
  • 視頻教程
  • 修復 WordPress 中的 500 內部服務器錯誤
  • 清除 WordPress 和瀏覽器緩存
  • 檢查損壞的 .htaccess 文件
  • 增加 PHP 內存限制
  • 停用所有 WordPress 插件
  • 切換到默認的 WordPress 主題
  • 重新上傳核心文件
  • 在 WordPress 中啟用調試日誌
  • 詢問您的託管服務提供商

500 內部服務器錯誤是什麼?

500 內部服務器錯誤是一種常見的 Web 服務器錯誤。 它並不特定於 WordPress 網站,任何網站都可能發生。

錯誤消息中的 500 在技術上是一個 HTTP 錯誤代碼。 查找此代碼只會顯示其標準描述。

500 Internal Server Error 響應代碼表示服務器遇到了阻止它完成請求的意外情況。

這是一個通用的包羅萬象的錯誤消息,這意味著服務器在遇到問題時無法分配更好更有用的錯誤消息。

根據您的網站使用的網絡服務器軟件(Nginx 或 Apache)以及您使用的瀏覽器,錯誤頁面看起來會有所不同。

以下是 Apache 錯誤頁面的外觀。

Internal server error page on Apache

如果您使用的是 Nginx 和 Google Chrome,它可能看起來會有所不同。

如果谷歌瀏覽器無法找到要顯示的錯誤頁面,它看起來也會有所不同:

Google Chrome http 500 error

對於初學者來說,這可能非常令人沮喪。 沒有線索或消息可以將他們指向正確的方向以快速修復它。

詢問如何解決內部服務器錯誤就像詢問您的醫生如何解決您正在經歷的疼痛而不告訴他們疼痛在哪裡。

但是,如果我們知道觸發此錯誤的常見原因,那麼我們可以嘗試將它們一一修復以在不破壞任何內容的情況下解決錯誤。

是什麼導致 WordPress 中的內部服務器錯誤?

WordPress 中的內部服務器錯誤通常是由損壞的 .htaccess 文件、編碼不當的插件或您的活動 WordPress 主題引起的。

我們知道的 WordPress 內部服務器錯誤的其他可能原因是:PHP 內存限製或損壞的核心 WordPress 文件。

在某些情況下,內部服務器錯誤可能僅在您嘗試訪問 WordPress 管理區域時出現,而網站的其餘部分工作正常。

話雖這麼說,現在讓我們來看看如何解決 WordPress 中的內部服務器錯誤。

視頻教程

訂閱 WPBeginner

如果您更喜歡書面說明,請繼續閱讀。

修復 WordPress 中的 500 內部服務器錯誤

在開始故障排除之前,請確保您手頭有網站的完整 WordPress 備份。

如果您有權訪問 WordPress 管理區域,那麼您可以使用 WordPress 備份插件來創建您網站的完整備份。 我們建議使用 Duplicator 來處理這個問題。

另一方面,如果您無權訪問 WordPress 管理區域,則可以使用 phpMyAdmin 和 FTP 客戶端手動創建 WordPress 備份。

之後,您可以按照以下步驟對您網站上的內部服務器錯誤進行故障排除和修復。

清除 WordPress 和瀏覽器緩存

瀏覽器和您的 WordPress 緩存插件有時會錯誤地存儲錯誤頁面的緩存副本。

解決此問題的最簡單方法是首先清除瀏覽器緩存。

Clear cache

之後,如果您有權訪問網站的 WordPress 管理區域,則可以通過訪問緩存插件的設置頁面來清空 WordPress 緩存。

有關詳細信息,請參閱我們關於如何清除 WordPress 緩存的教程。

檢查損壞的 .htaccess 文件

.htaccess 文件是一個服務器配置文件,WordPress 也使用它來設置重定向。

內部服務器錯誤的最常見原因之一是損壞的 .htaccess 文件。

解決此問題的最簡單方法是訪問 WordPress 管理區域中的設置 » 永久鏈接頁面,然後單擊“保存更改”按鈕而不進行任何更改。

Update permalinks to regenerate .htaccess file

WordPress 現在將嘗試更新您的 .htaccess 文件或為您生成一個新文件。 您現在可以訪問您的網站,看看是否已解決內部服務器錯誤。

如果您仍然可以看到錯誤,那麼您需要確保 WordPress 能夠生成或寫入 .htaccess 文件。

有時,由於文件和目錄權限,WordPress 可能無法創建或寫入您的 .htaccess 文件。

您現在可以嘗試手動替換 .htaccess 文件。 首先,您需要使用 FTP 或主機帳戶控制面板下的文件管理器應用程序登錄您的網​​站。

接下來,您需要將主 .htaccess 文件重命名為類似 .htaccess_old 的名稱。 這使您可以將文件保留為備份,但 WordPress 不會識別它。

要重命名 .htaccess 文件,您需要使用 FTP 或託管帳戶的 cPanel 儀表板中的文件管理器應用程序登錄您的站點。

連接後,.htaccess 文件將位於同一目錄中,您將在該目錄中看到 wp-content、wp-admin 和 wp-includes 等文件夾。

只需右鍵單擊 .htaccess 文件並將其重命名為 .htaccess_old。

Rename .htaccess file

接下來,您需要創建一個新的 .htaccess 文件。

在您網站的根文件夾中,右鍵單擊,然後在您的 FTP 客戶端或文件管理器應用程序中選擇“創建新文件”選項。

Create new htaccess file

將這個新文件命名為 .htaccess 並單擊確定以保存它。

現在,這個 .htaccess 文件當前是空的,您需要向其中添加默認的 WordPress 重寫規則。

只需右鍵單擊該文件,然後在您的 FTP 客戶端或文件管理器應用程序中選擇查看/編輯。

Editing .htaccess file in WordPress

空文件將在記事本或 TextEdit 等純文本編輯器中打開。 現在,您需要將以下代碼複製並粘貼到其中。

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress

此代碼是 WordPress 使用的默認規則集。 不要忘記保存更改並將文件上傳回服務器。

您現在可以訪問您的網站,看看是否已解決內部服務器錯誤。

如果是這樣,請表揚一下自己,因為您修復了內部服務器錯誤。

重要提示:在繼續其他操作之前,請確保您轉到 WordPress 管理區域中的設置 » 永久鏈接頁面,然後單擊保存按鈕而不進行任何更改。 這將使用適當的重寫規則為您重新生成 .htaccess 文件,以確保您的帖子頁面不會返回 404 錯誤。

如果檢查損壞的 .htaccess 文件解決方案對您不起作用,那麼您需要繼續閱讀本文。

增加 PHP 內存限制

如果腳本消耗了所有 PHP 內存限制,有時會發生內部服務器錯誤。

增加 PHP 內存限制的最簡單方法是編輯 wp-config.php 文件。 如果您是初學者,執行此操作時要小心。 您需要仔細遵循這些說明,因為即使是 WordPress 核心文件中的小錯誤也會破壞您的網站。

首先,只需使用 FTP 客戶端或託管帳戶控制面板下的文件管理器應用程序連接到您的 WordPress 網站。

您會在網站的主文件夾中找到 wp-config.php 文件。 右鍵單擊它並選擇“下載”。 這將確保您有文件的備份,以防出現問題。

保存後,您可以右鍵單擊它並選擇“查看/編輯”。

Edit wp-config file

在 wp-config.php 文件中,您需要在“That's all, stop editing!”行上方添加以下代碼。 快樂出版'。

define( 'WP_MEMORY_LIMIT', '256M' );

有關更多詳細信息,請參閱我們關於如何增加 WordPress 中的 PHP 內存限制的教程。

如果您僅在嘗試登錄到您的 WordPress 管理員或在您的 wp-admin 中上傳圖像時看到內部服務器錯誤,那麼您應該按照以下步驟增加內存限制:

  1. 在您的計算機上創建一個空白文本文件並將其命名為 php.ini
  2. 將這段代碼粘貼到那裡:memory=256MB
  3. 保存文件
  4. 使用 FTP 將其上傳到您的 /wp-admin/ 文件夾

如果增加內存限制為您解決了問題,那麼您只是暫時解決了問題。 您仍然需要找到耗盡內存限制的原因。

這可能是一個編碼不當的插件,甚至是一個主題功能。 我們強烈建議您讓您的 WordPress 網絡託管公司查看服務器日誌,以幫助您找到準確的診斷信息。

如果增加 PHP 內存限制不能為您解決問題,那麼您需要進行更多故障排除。

停用所有 WordPress 插件

如果上述解決方案都不適合您,那麼此錯誤很可能是由您網站上安裝的特定插件引起的。

也有可能是插件的組合不能很好地相互配合。

如果您可以訪問您網站的 WordPress 管理區域,那麼您只需轉到插件頁面並停用所有 WordPress 插件即可。

Deactivate all plugins

但是,如果您無法訪問 WordPress 管理區域,則可以使用 FTP 停用所有 WordPress 插件。

只需使用 FTP 客戶端或託管帳戶控制面板下的文件管理器應用程序連接到您的 WordPress 網站。

連接後,導航到 /wp-content/ 文件夾並將插件文件夾重命名為 plugins.deactivated。

Plugins deactivated via FTP

WordPress 在插件文件夾中查找插件。 如果找不到插件文件夾,那麼它會自動停用所有插件。

您現在可以嘗試訪問您的網站,看看這是否解決了您網站上的內部服務器錯誤。

要恢復所有插件,您只需將 plugins.deactivated 文件夾重命名為 plugins。

您的插件現在將被恢復,但它們仍將被停用。

您現在可以一個一個地激活插件並訪問您的網站以找出導致內部服務器錯誤的插件。

有關更多詳細信息,請參閱我們的指南,了解如何在沒有 WP-Admin 的情況下停用所有 WordPress 插件。

如果停用所有插件無法修復您網站上的內部服務器錯誤,請繼續閱讀。

切換到默認的 WordPress 主題

內部服務器錯誤的一個可能原因可能是您的 WordPress 主題中的一些代碼。

要查明是否屬於這種情況,您需要將主題切換為默認的 WordPress 主題。

如果您有權訪問 WordPress 管理區域,則只需轉到外觀 » 主題頁面。 如果您已經安裝了默認主題,則只需單擊“激活”按鈕即可切換主題。

Activate a default theme

如果您沒有安裝默認主題,則可以單擊頂部的添加新按鈕並安裝默認主題(20-23、20-22 等)。

現在,如果您無權訪問 WordPress 管理區域,您仍然可以切換到默認主題。

簡單地說,使用 FTP 客戶端連接到您的 WordPress 網站並導航到 /wp-content/ 文件夾。

右鍵單擊選擇主題文件夾並將其下載到您的計算機作為備份。

Download theme folder

接下來,您需要從您的網站中刪除主題文件夾。 刪除後,繼續創建一個新的主題文件夾。

您的新主題文件夾將完全為空,這意味著您目前沒有安裝任何 WordPress 主題。

接下來,您需要訪問 WordPress 主題目錄並將默認的 WordPress 主題下載到您的計算機。

Download a default theme

然後,您的瀏覽器會將主題作為 zip 文件下載到您的計算機。

在您的計算機上找到該文件,然後將其解壓縮。 Windows 用戶可以通過右鍵單擊文件然後選擇全部解壓縮來解壓縮文件。 Mac 用戶可以雙擊 zip 文件進行解壓。

Extract theme files

您現在會看到一個包含您的 WordPress 主題的文件夾。

切換回您的 FTP 客戶端或文件管理器並將此文件夾上傳到空的主題文件夾。

Upload theme files

上傳後,WordPress 將自動開始使用默認主題。

您現在可以訪問您的網站,看看這是否解決了內部服務器錯誤。

如果這不起作用,那麼您可以從備份中重新上傳您的 WordPress 主題或切換回您正在使用的主題。

別擔心,您還可以做一些其他的事情來修復錯誤。

重新上傳核心文件

如果插件和主題選項沒有修復內部服務器錯誤,那麼值得從全新的 WordPress 安裝中重新上傳 /wp-admin/ 和 /wp-includes/ 文件夾。

這不會刪除您的任何信息,但它可能會在任何文件損壞的情況下解決問題。

首先,您需要訪問 WordPress.org 網站並單擊“下載”按鈕。

Download WordPress

這會將 WordPress zip 文件下載到您的計算機。

繼續並提取 zip 文件。 在其中,您會找到一個 wordpress 文件夾。

WordPress folder extracted

接下來,您需要使用 FTP 客戶端連接到您的 WordPress 網站。

連接後轉到您網站的根文件夾。 它是其中包含 wp-admin、wp-includes、wp-content 文件夾的文件夾。

在左欄中打開計算機上的 WordPress 文件夾。

現在您需要選擇 wordpresss 文件夾中的所有文件並將它們上傳到您的網站。

Upload core WordPress files

您的 FTP 客戶端現在會將這些文件夾傳輸到您的服務器。

它會詢問您是否要覆蓋文件。 選擇“覆蓋”,然後選擇“始終使用此操作”。

Overwrite WordPress core files

您的 FTP 客戶端現在將用新的副本替換舊的 WordPress 文件。

如果您的 WordPress 文件已損壞,則此步驟將為您修復內部服務器錯誤。

在 WordPress 中啟用調試日誌

WordPress 帶有一個內置系統來保存日誌以進行調試。

您可以使用 WP Debugging 插件打開它。 有關更多詳細信息,請參閱我們關於如何安裝 WordPress 插件的指南。

激活後,該插件將在您的 WordPress 網站上打開調試日誌。

如果您無權訪問 WordPress 網站的管理區域,則可以通過將以下代碼添加到 wp-config.php 文件來打開調試。

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

打開調試日誌後,您可以使用 FTP 客戶端並導航到 /wp-content/ 文件夾來查看這些日誌。

Debug log

您可以在文本編輯器中打開調試日誌文件,它會顯示您網站上出現的錯誤和警告列表。

其中一些錯誤和警告可能是無害的事件,可能不需要修復。 但是,如果您在網站上看到內部服務器錯誤,那麼這些錯誤可能會為您指明正確的方向。

詢問您的託管服務提供商

如果所有方法都無法修復您網站上的內部服務器錯誤,那麼是時候尋求更多幫助了。 聯繫您的虛擬主機支持團隊,他們將能夠檢查服務器日誌並找到錯誤的根本原因。

如果您想繼續自己進行故障排除,請參閱我們面向初學者的終極 WordPress 故障排除指南。

我們希望本文能幫助您修復 WordPress 中的內部服務器錯誤。 您可能還想查看我們最常見的 WordPress 錯誤的完整列表,以及我們關於如何選擇最佳網絡託管服務提供商的指南。

如果您喜歡這篇文章,請訂閱我們的 YouTube 頻道以獲取 WordPress 視頻教程。 您還可以在 Twitter 和 Facebook 上找到我們。