The requested URL was not found on this server.
WordPress 內頁出現「The requested URL was not found on this server.」:原因與檢查方式
Apache 沒辦法把好讀的永久連結交給 WordPress 時,會回這個 404 頁面。首頁打得開、每一篇文章或頁面卻都回這個頁面時,表示網址規則不見了或沒有套用。
你現在看到的是哪一種情況?
.htaccess 不見了,或少了 WordPress 的網址規則段落,Apache 就把每個網址當成真的資料夾去找。
資料庫裡存的網址規則,已經和永久連結設定或登記的文章類型對不上。
請求到了 WordPress,存著的網址規則卻比對不上。在「永久連結」畫面按一次儲存,就會重新產生。
常見原因
.htaccess 規則不見:.htaccess 不見了,或已經沒有 WordPress 的網址規則段落。
mod_rewrite 關閉:Apache 停用了 mod_rewrite,或 AllowOverride 設成 None。
過期的網址規則:rewrite_rules 選項已經和永久連結結構對不上。
參考資料
- Settings Permalinks screen (WordPress.org Documentation)
- Apache HTTPD / .htaccess (Advanced Administration Handbook)
系統怎麼處理
永久連結規則表過期屬於自動處理的項目:系統重建永久連結規則表。.htaccess 損壞屬於自動處理的項目:系統重建網址規則。修復在維修站的網站副本上進行,複驗通過後才寫回。您網站資料庫裡的受保護資料表(會員、留言、訂單、表單填寫)只取結構。SSH/FTP 模式下,系統寫回前先在您的主機建立修復前備份,寫回後驗證沒通過時,以這份備份進行還原。修復未能完成,修復費全額退還。
- 初步評估:輸入網址
- 複製到維修站:在副本上作業
- 找出原因:逐項檢查
- 修復與複驗:首頁與內頁
- 寫回或交付:複驗通過才進行
首頁打得開、每一個內頁都回這個 404 時,可以交給 WP119。
初步評估我的網站 →