你是否在 WordPress 當中遇到 500 Internal Server Error 的錯誤問題呢?500 Error 是常見的 WordPress 錯誤之一,而當初學者遇到這個問題導致網站崩潰時,往往會不曉得該如何修復 500 Internal Server Error 的錯誤。因此,在今天的教學當中,要來教你 500 Internal Server Error 發生的原因,以及該如何修復 500 Error 的問題。
WordPress 新版本 500 Error 通知
在 WordPress 5.2 版本之後,當網站遇到 500 Error 的錯誤問題時,會返回「通知:網站遭遇技術性問題」的畫面,同時也會寄送一封 Email 通知到管理員的信箱中。
文章目錄
為何會發生 500 Internal Server Error?
500 Internal Server Error 指的是內部伺服器錯誤,不管你的網站是不是採用 WordPress 系統,任何放在伺服器當中的網頁都有可能發生這種錯誤。
當這種內部伺服器錯誤的情況發生時,是不會告訴你任何發生的原因,因此一般人往往不曉得該如何找出此錯誤的發生原因。
網路中有許多不同類型的錯誤代碼,例如:500、502、503、504…等等,每一種錯誤代碼都表示不同的錯誤。在 500 Internal Server Error 的錯誤的情形下,表示伺服器遇到意外的情況,無法返回客戶端主機的請求。
而在 WordPress 網站當中,這個錯誤通常是由外掛與佈景主題所引起的,另外也有可能是由 .htaccess
檔案損壞與 PHP 內存限制索導致的。
除了此錯誤之外,你的網站也可能常常會出現各種不同的錯誤代碼,以下是常見的錯誤代碼以解決方式:
- 如何解決 WordPress 出現 502 Bad Gateway Error 的問題?
- 如何修復在 WordPress 當中「503 Service Unavailable Error」的問題?
- WordPress 出現 504 Gateway Timeout Error 解決方法?
下面來讓我們看看還有哪些常見的 500 Error 錯誤的顯示方式。
常見的 500 Internal Server Error 顯示方式
由於各種 Web 伺服器、作業系統與瀏覽器的不同,這個錯誤會以不同的方式呈現出來,但你可以確定的是其代碼都會呈現 500。以下是常見的 500 錯誤代碼顯示方式:
- “500 Internal Server Error”
- “HTTP 500”
- “Internal Server Error”
- “HTTP 500 – Internal Server Error”
- “500 Error”
- “HTTP Error 500”
- “500 – Internal Server Error”
- “500 Internal Server Error. Sorry something went wrong.”
- “500. That’s an error. There was an error. Please try again later. That’s all we know.”
- “The website cannot display the page – HTTP 500.”
- “Is currently unable to handle this request. HTTP ERROR 500.”
如果是較大型的公司,有時他們也會擁有自己客製化的 500 Internal Server Error 顯示方式:
以下是常見的 500 Error 中的各種回應碼的解釋:
500 內部服務器錯誤列表 | |
---|---|
回應碼 | 錯誤說明 |
500.0 | 發生模塊或 ISAPI 錯誤。 |
500.11 | 應用程序正在關閉 Web 服務器。 |
500.12 | 應用程序正忙於在 Web 服務器上重新啟動。 |
500.13 | Web 服務器太忙了。 |
500.15 | 不允許直接請求 Global.asax。 |
500.19 | 配置數據無效。 |
500.21 | 模塊無法識別。 |
500.22 | ASP.NET httpModules 配置不適用於託管管道模式。 |
500.23 | ASP.NET httpHandlers 配置不適用於託管管道模式。 |
500.24 | ASP.NET 模擬配置不適用於託管管道模式。 |
500.50 | RQ_BEGIN_REQUEST 通知處理期間發生重寫錯誤。發生配置或入站規則執行錯誤。 |
500.51 | GL_PRE_BEGIN_REQUEST 通知處理期間發生重寫錯誤。發生全局配置或全局規則執行錯誤。 |
500.52 | RQ_SEND_RESPONSE 通知處理期間發生重寫錯誤。發生了出站規則執行。 |
500.53 | RQ_RELEASE_REQUEST_STATE 通知處理期間發生重寫錯誤。發生出站規則執行錯誤。規則配置為在輸出用戶緩存更新之前執行。 |
500.100 | 內部 ASP 錯誤。 |
500 Internal Server Error 對 SEO 的影響
和 503 Error 不同,如果 500 Error 不立即進行修復,很快你的錯誤就會導致網站排名下降的負面影響。當 Google 索引你的網站卻不斷回傳 500 Error,你本來的 SEO 排名就很有可能會受到影響。
如果網站在短時間內發生 500 Error 的問題,是不會導致太大的影響。但如果這種錯誤問題的發生時間過長(一週以上),那麼 Google 就有可能會將這個頁面視為是已經不存在的頁面,進而影響你的網站排名。
如果你擔心 500 Error 會為你的網站帶來重大損失,那麼你應該好好了解它的發生原因,以及當你遇到的時候,該如何去一一解決這些問題。
如何修復 500 Internal Server Error
如果你的 WordPress 網站出現 500 Error 的錯誤訊息,應該如何排除此問題?如果沒有相關的技術背景,一般的新手可能會被搞得一個頭兩個大。就像剛剛說過的,通常這個問題是源自於 WordPress 主機與資料庫出現問題。因此,下面會提供常見的 500 Internal Server Error 發生問題,以及其各自的解決方法,相信可以提供你一些幫助,讓你的網站能夠立刻恢復正常。
重新載入
當遇到 500 Internal Server Error 時,最常見的錯誤都是因為網站的 WordPress 主機短暫的故障所引起的。因此,通常只需要給它幾分鐘,再重新整理你的網站即可恢復正常。
如果你發現這個問題可以藉由此方式就解決,那麼通常你就不需要再採取近一步的動作。但如果這個問題一直不斷重複發生,那麼很有可能是因為 WordPress 主機或資料庫的問題所導致。
如果你不曉得 500 Error 是否是你的電腦才會發生,你可以使用「https://downforeveryoneorjustme.com/」來檢查。這個網站會告訴你所查詢的網站是否是無法訪問,還是只有你才無法訪問。
有時,當你正在進行網站佈景主題更新與外掛更新後,你的網站會立即出現短暫 500 Error 的問題。這是由於主機 CPU 與記憶體瞬間負荷超過限制所導致。這尤其常發生在低規格的 WordPress 主機上。如果你想完全杜絕這個問題,那麼則需要挑選好一點的虛擬主機來存放你的網站。
你可以藉由我的虛擬主機評測文章來了解各家主機商的介紹與測試報告。
檢查 .htaccess 檔案
對於 WordPress 網站來說,當出現 500 Internal Server Error 的錯誤時,首先可以先檢查你的 .htaccess 檔案。
你可以藉由重新命名你的 .htaccess 檔案,並重新產生一個新的檔案來進行故障排除。
你可以通過 cPanel 控制面板進入網站的資料夾去找到 .htaccess 檔案,也可以透過 FTP、SFTP 的方式,進入 WordPress 所在的主機伺服器當中找到。
進入後,你可以在根目錄當中看到 .htaccess 檔案,將其重新命名為「.htaccess_old」,並重新上傳一個預設的 .htaccess 檔案。
你可以前往 WordPress 官網查看預設的 .htaccess 檔案內容。
或者,你也可以先不用上傳新的 .htaccess 檔案。在你重新命名之後,嘗試重新訪問你的 WordPress 網站,看看是否能夠排除 500 Error 的問題。如果可以,那麼你只需要進入網站後台的控制台 > 設定 > 永久連結,在該頁面當中點擊「儲存設定」按鈕,WordPress 就會自動生成一個新的 .htaccess 檔案了。
如果這個方法並不能解決你的問題,那麼再接著繼續往下看。
增加 PHP 記憶體限制
如果你的 PHP 記憶體達到上限,那麼有時也是導致發生 500 Internal Server Error 的原因。要解決這個問題,只需要增加 WordPress 的 PHP Memory Limit 即可。
如果這個 500 Error 的錯誤只發生在登入 WordPress 的後台頁面中,那麼你就可以透過以下步驟來增加 WordPress 的 PHP 記憶體上限,來解決這個問題:
- 進入 wp-config.php 檔案
- 添加以下程式碼:
define( 'WP_MEMORY_LIMIT', '256M' );
- 保存設定
或者,如果你是使用 VPS 主機,你也可以透過修改 PHP.ini 檔案的方式來 Increase PHP Memory Limit:
- 進入伺服器根目錄
- 修改 PHP.ini 檔案(如果沒有,則手動建立一個空白的 PHP.ini 檔案)
- 添加以下程式碼:
memory_limit = 256M
- 保存設定
除了上述兩種方式可以增加 PHP Memory Limit 之外,你也可以透過修改 .htaccess 檔案來增加 PHP 記憶體上限:
- 進入伺服器根目錄
- 修改 .htaccess 檔案
- 添加以下程式碼:
php_value memory_limit 256M
以上就是常見的三種增加 PHP 記憶體上限的方法,只需要挑其中一種使用即可。
如果你可以透過增加記憶體限制來解決 500 Error 的問題,那麼你只是暫時解決了這個問題,而非根治。最好的做法是,找出耗盡你網站 PHP 記憶體的原因,如此才是正確的 Debug 作法。
如果 Increase PHP Memory Limit 並沒有解決 500 Internal Server Error 的問題,那麼我們再接著往下看。
停用所有 WordPress 外掛
WordPress 之所以強大,是源自於外掛的擴充性,而這往往也是問題發生的源頭。
如果你的網站發生了 500 Error 的錯誤,不妨試著先停用所有的外掛,或許是其中一個外掛、或是外掛之間的相容性錯誤,導致了網站出現 500 Internal Server Error 的問題。
由於你的網站無法正常訪問,因此你只能透過 cPanel 之類的控制面板來進入主機資料夾。或是透過 FTP、SFTP 的方式,進入主機伺服器。
進入 WordPress 伺服器後,在「wp-content」資料夾中找到「plugins」資料夾,並將其重新命名為「plugins_old」,即可停用所有 WordPress 外掛。
要找出由 WordPress 外掛所引起的 500 Error 唯一的方法,就是先停用所有的外掛,如果停用後你就能正常訪問網站,那麼再逐一啟用,以找出導致 500 Error 的罪魁禍首。
重新上傳 WordPress 核心檔案
如果上面的方法都沒有修復 500 Error 的問題,那麼你可以試試重新上傳 WordPress 核心檔案來解決這個問題。
重新上傳 WordPress 核心檔案不會修改、刪除或影響你原本網站的內容,因此你不必擔心重新上傳會導致資料不見。
你可以進入 WordPress.org 網站找到最新的 WordPress 核心檔案,並將其下載下來。
進入 https://wordpress.org/download/ 頁面後,就會顯示當前最新的 WordPress 版本載點:
接著解壓縮後,你只需要將其中的「wp-includes」與「wp-admin」這兩個資料夾上傳並覆蓋你目前的主機檔案,如此一來就大功告成了。
尋求主機商的幫助
若以上方法你都試過,且都無法解決 500 Error 的問題,那麼你可以聯絡你所購買的主機商,尋求客服技術支援的協助,來幫你找出發生的原因,並解決 500 Internal Server Error 的問題。
希望今天的教學可以幫助你修復 500 內部伺服器錯誤的問題。如果你還想看其他 WordPress 教學,不妨在底下留言告訴我,我會盡快回覆並提供新的內容。
相關文章
- 戰國策 WordPress 虛擬主機完整教學 – 免費 30 天主機申請試用服務,國內 WordPress 架站的好選擇
- 如何解決 WordPress 中「目前正在執行另一項更新程序」導致無法升級/更新的問題
- 如何修復 WordPress 網站無法顯示更新後最新內容的問題?
- WordPress 出現 504 Gateway Timeout Error 解決方法?
- 如何在 WordPress 中自定義滾動條?兩個方法教你快速設定!
- 如何停止 WordPress AutoSave 自動儲存功能?4 個方法幫你快速禁用!
- 如何解決在 WordPress 當中遇到建立數據庫連線時發生錯誤(Establishing a Database Connection)的情況
- 戰國策 WordPress + SSL 虛擬主機評價,亞洲雲端服務業的領導品牌台灣本土虛擬主機推薦心得
- 遠振資訊 WordPress 虛擬主機中文教學,台灣優質虛擬主機免費 15 天試用服務購買與安裝完整教學
- WP Rocket – WordPress 速度外掛教學,評價最高的快取緩存外掛提升網站速度與使用者體驗
- Bluehost 虛擬主機教學:WordPress 架站新手也能輕鬆上手! (2024 最新)
- 2024 Bluehost Black Friday/Cyber Monday 70% 特價優惠 – 全年最低價格每月低至 $2.65 美元
感謝你的小天使 says
非常感謝你的分享!! 讓我成功救回了我的部落格~~謝謝
Sliven says
Hi, 很高興幫助到你!
陳小喵 says
Sliven您好
想請教您,如果網站前台連線顯示都正常,但在後台操作購物車商品的「編輯」與「新增」等功能時會出現「HTTP ERROR 500」訊息,是否也適用您上述的解決方案?
完整錯誤訊息為「這個網頁無法正常運作,twotwowear.com 目前無法處理這項要求。HTTP ERROR 500」。謝謝您的協助!
Sliven says
Hi 小喵,
按照您的敘述來看,比較有可能的原因是出自於您的網站與資料庫之間在連線時,會產生短暫的錯誤,進而導致您會看到 Error 500 的錯誤訊息。
比較有可能的原因有幾個:
1.您的虛擬主機規格過低,或是主機中同時擁有太多的網站同時在運行(導致每個網站所獲得的效能非常低),這會讓您在編輯或新增產品時,會發生請求錯誤的問題(無法正常連線至資料庫)。
2.您的外掛過多,導致您每次載入頁面,都會發送非常多的請求給資料庫,加上主機規格不高,造成主機與資料庫之間連線出問題。
3.您的外掛互相之間有衝突,或是某個外掛的問題所引起資料庫連線錯誤。
其中比較常見的應該是虛擬主機問題或是外掛所引發的問題,您可以先按照文章中的教學,將您的外掛先全部停用,再慢慢一個個啟用,找出問題外掛。
若找不出問題,那通常比較有可能問題的發生是出自於主機,建議您可以先諮詢一下主機商,或是挑選其他比較高規格的虛擬主機。有興趣的話可以參考這篇教學:https://techmoon.xyz/bluehost-wordpress/
以上大概就是您可以先著手參考解決的幾個步驟,有問題歡迎再留言詢問。
陳小喵 says
Sliven您好
謝謝您詳細的說明,我試試看能否找出問題點,再次感謝您無償的協助 🙂