WordPress 頁面找不到(404)?試試重新儲存永久連結

首頁打得開,點進去文章或頁面全部 404。

文章沒被刪、網址也沒改。到底怎麼回事?

先試一件事:後台「設定 → 永久連結」,什麼都不用改,直接按「儲存設定」。很多時候就這樣修好了。


操作步驟

左側選單 → 設定 → 永久連結。頁面載入後不用動任何選項,滑到最下面按「儲存設定」。回到前台重新點原本 404 的頁面。

整個操作不到 30 秒。


為什麼這招有效

永久連結不是 PHP 在處理的,是伺服器。

Apache 的做法是在 .htaccess 寫一條 mod_rewrite 規則:「找不到這個檔案?全部丟給 index.php。」Nginx 則是用設定檔裡的 try_files 做同一件事。

這些規則遺失或損壞的時候,伺服器收到 /2026/07/my-article/ 這種網址,在磁碟上找不到對應的檔案,直接回 404。

你按「儲存設定」的時候,WordPress 重新產生 .htaccess 裡的重寫規則。規則恢復了,伺服器就知道要把請求轉給 WordPress 處理。


什麼情況會讓規則壞掉

  • 外掛更新時改壞了 .htaccess(安全外掛、快取外掛常見)
  • 搬家或還原備份時漏了 .htaccess(它是隱藏檔,容易被跳過)
  • WordPress 沒有寫入權限,上次改設定的時候就沒真的寫進去
  • 主機商的自動安全掃描「清理」了它認為可疑的規則

幾個提醒

這不是萬能藥。重新儲存永久連結只修得了「重寫規則遺失」這一種 404。文章真的被刪了、外掛自訂路由衝突、Nginx 缺 try_files、自訂文章類型 slug 撞名,都不會被這招解決。但因為零成本,遇到莫名 404 第一個試它沒壞處。

Nginx 使用者注意:Nginx 不支援 .htaccess,WordPress 沒辦法自動寫重寫規則。「重新儲存永久連結」只會更新 WordPress 內部的路由設定,不會改伺服器設定。問題如果出在 Nginx,你需要手動改 server block 裡的 try_files。

如果你是「改了永久連結結構」而不只是重新儲存(例如從 ?p=123 改成 /文章名稱/),所有舊網址就會變成真正的 404。要設 301 轉址,不然 Google 已經索引的頁面會全掉。單純重新儲存不改結構的話沒這個問題。

總結

遇到莫名 404 → 第一步去永久連結按儲存,零成本

沒修好 → 再查外掛衝突、Nginx 設定、頁面是否真的不存在

搞不定?讓專人處理

WP 中毒救援 $5,500 起 | 外掛衝突排查含版面復原 $4,000 起

了解服務方案 →

文章分享