【WordPress 故障】網站顯示 500 Internal Server Error? 為什麼? 如何修復?

當你進入 WordPress 網站後台,準備大展身手,但網站卻突然開始卡頓,隨即顯示 500 Internal Server Error 之後不管怎麼重新整理就是不會回來?這篇教學會告訴你原因,並提供你當下快速解決的方法,還有長久的治本方案!

500 Internal Server Error 網站狀態圖
500 Internal Server Error 網站狀態圖

關於 500 Internal Server Error

當伺服器 (主機) 在處理要求時發生錯誤,就會產生這種結果。伺服器的狀況其實有很多種,像 MDN Web Docs 就整理了 501、502、…、511 等等伺服器錯誤狀態碼,而如果你那台主機出現的狀況不在這些描述中,就會用 500 來做通用顯示。而可能的提示資訊如下:

  • 500 Internal Server Error
  • Internal Server Error
  • HTTP ERROR 500
  • HTTP 500
  • 500 Error
  • 什麼都沒有,完全空白畫面

同時畫面中的詳細描述會要你去詢問網站管理員 (就是你自己),但如果是一般的共享主機,我猜你應該不會收到任何信件通知,所以這些提示訊息大概也沒什麼幫助。

可能原因

如同上面提到的,500 算是一個非預期的通用狀態,以下列出部分可能:

伺服器負荷太大

共享主機 (Shared Hosting) 的話有很高機率是這個原因!主機商弄了一個超大伺服器,然後把資源大量拆分後出租給各位做共享主機,當然也會替每個人能使用到的資源設限制。一旦使用超出這個性能,那主機商就會毫不猶豫的讓你的主機下線,避免你去搶到其他人主機的資源。

PHP 版本問題

如果網站近期有 PHP 版本更新,又或者你增加了新工具,但工具們需要的環境 (功能、性能) 你主機卻無法提供時,也會產生這錯誤。WordPress 官方統計可看出雖然主流是 PHP 7.4,但低到 PHP 5.6 又或者高到 PHP 8.2 都也有很多人在使用,總是有可能發生相容性問題的。

如何解決

以下舉例一些可行的 500 Internal Server Error 應對方案:

放著不管

有可能只是暫時性的!比方說主機商也就稍微讓你的主機下線的五分鐘,之後會讓它重新回歸。一段時間後重新整理看看,也許就會恢復。

Bluehost 主機請直接找客服

如果你是使用 Bluehost 主機架設 WordPress,那麼高機率是超出性能限制被強制下線,我自己在那邊也有一個測試站,想搞「稍稍微」華麗一點也是直接就地爆炸。以下附上聯絡客服的流程與回答範本:

Bluehost 聯絡客服
Bluehost 聯絡客服

在 Bluehost 後台的右下角就可以找到「CHAT」,按下去後一開始是系統自動回覆,所以就是按選項,最後選這自動回覆沒有幫助,就能成功呼喚真人客服。提供我遇到的問題 (擷取前半段) 與回答:

  • 初次對話。 Support for Existing Products
  • Are you contacting us for navigation help…? No
  • What is the product you need help with? Web Hosting
  • What service do you need help with? WordPress
  • Please select the option below that best describes…? 403/404/500 Error
  • Did that answer your question? No
  • May I please have your name…? 輸入你的名字 (跟你溝通時的稱呼而已)
  • What is the domain name associated to…? 輸入你的網域名稱
Bluehost 前置的自動對話
前置的自動對話

如果等待時間少於一分鐘或者極短的話,真人客服就會直接現身;但如果你像上面那張圖要等一些時間,這時會多出一個對話框確定你人還在現場,記得一定要按 [Yes],不然你就會被踢出對話,要重新排隊了…

my site shows “500 Internal Server Error” can you help me fix it?

客服出現後就貼這串給他
Bluehost 後續的真人問答
後續的真人問答

有些客服看到這狀況後,不用更多交談就會直接幫你處理;而有的會跟你額外收集一些資料,就像上圖那樣;我也遇過要求我提供 Security Pin 的客服,順便說一下這個 PIN 碼在畫面右上角的頭像 → [My Profile] 裡面,直接顯示在 Account Protection 那區。

Bluehost 問題解決
問題解決

最後跟他說個謝謝、不需要其他幫忙大概就可以結束對話了,我個人是習慣順手幫他留個 5 星好評啦~

看錯誤紀錄

如果是其他的共享主機應該也是可以找客服直接處理,大家大概都知道就是性能問題。而如果你是自己租了一台 VPS 自己管理維護的情況,那就直接連進去檔案總管,在 public_html 這裡可以看到 error_log 錯誤紀錄,就看是什麼問題試著解決即可。

長期解決方案

如果你一直都是使用共享主機的最低價方案,其實這狀況很明顯地就是性能不足。畢竟低價方案是設計讓人單純寫文章分享用的,要拿來做花式排版甚至做個購物平台,實在是非常困難…且低價主機通常就是堪用,會有很多意想不到的情況,比方說 SSL 錯誤也是很常見的一種

雖然我會說如果你都能在第一時間發現並處理的話,對於 SEO 其實影響不大。但搞到網站頻繁下線,顧客瀏覽體驗不佳也稱不上理想。最佳解肯定是根據需求選擇合適的主機,如果你是會用到上面提到的排版、購物站這種進階需求的話,還是建議盡快跟著這篇教學把網站搬到更高規格的主機上吧

常見問題

500 Internal Server Error 是什麼?

這是伺服器出現狀況的描述,在處理要求時發生錯誤,就會顯示 5xx 錯誤。而伺服器的狀況其實有很多種,而如果出現的錯誤不在已經定義好的類別中,就會用 500 來做通用顯示。

為什麼網站會很常出現 500 Internal Server Error?

通常是因為主機 (伺服器) 性能已經不堪你的負荷,所以會建議升級主機,或者搬家到更好的主機上。Cloudways 就是一個不錯的搬家方案。

文章類別
建議文章