TrueURL
TrueURL

選單

免費重新導向工具

301 重新導向檢查

查出網址是永久還是暫時重新導向。TrueURL 會檢查每個躍點,並告訴您搜尋引擎是否會將這次搬移視為永久性的。

永久還是暫時:為什麼狀態碼很重要

伺服器是透過狀態碼告訴搜尋引擎這次搬移屬於哪種類型。永久重新導向(301 或 308)表示舊網址已經永久停用,因此搜尋引擎會將新網址編入索引,並把連結等訊號整合到新網址上。暫時重新導向(302、303 或 307)表示舊網址之後還會恢復,因此舊網址通常會繼續保留在索引中。

訪客完全察覺不到兩者的差別,所以錯誤的狀態碼可能好幾個月都沒人發現。許多工具在未特別指定時都會送出暫時重新導向:PHP 的 header('Location: ...')、Express 的 res.redirect() 和 Apache 的 Redirect 指令,預設都是 302。

如何解讀判定結果

TrueURL 會檢查重新導向鏈中的每個躍點,而不只是第一個:

  • 所有重新導向都是 301 或 308:這次搬移是永久性的。網頁搬移、網域變更和升級 HTTPS 時,應該就是這樣的結果。
  • 至少有一個躍點是 302、303 或 307,或是 meta refresh 或 JavaScript 重新導向:這條重新導向鏈並非完全永久。除非這次搬移確實是暫時的,否則請將這些躍點改為伺服器端的 301。
  • 完全沒有重新導向:網址直接做出回應。如果您預期會有重新導向,代表規則沒有生效,或是快取仍在提供舊網頁。
  • 最終網頁無法載入:重新導向本身正常,但目標回傳 404、410 或 5xx 錯誤,或是某個躍點失敗。請修正目的地,或將重新導向指向最相關的網頁。

301 與 308、302 與 307 的差異

301 和 308 都是永久重新導向,Google 對兩者的處理方式也相同。差別在於要求方法:遇到 301 時,瀏覽器可能會將 POST 改為 GET,308 則保證方法與主體都會保留。一般網頁請使用 301,必須持續接收 POST 要求的 API 端點或表單目標則使用 308。暫時重新導向的兩個狀態碼也是同樣的道理:302 可能會改變方法,307 則絕對不會。

如需所有 3xx 狀態碼的完整比較,請參閱 HTTP 重新導向狀態碼詳解。

什麼時候適合使用暫時重新導向

  • A/B 測試和短期活動,在幾週內將流量導向另一個網頁。
  • 短暫停機時,暫時重新導向到狀態頁面雖然可行,不過在原網址回傳 503,對搜尋引擎來說是更好的訊號。
  • 依訪客的語言、所在地、裝置或登入狀態進行的重新導向,此時原網址必須保留在索引中。
  • 表單送出之後(Post/Redirect/Get 模式),以 303 See Other 將瀏覽器導向結果頁面。

其他所有情況,尤其是網站搬遷和網址變更,請使用 301。

相關指南

常見問題

如何確認轉址是 301 還是 302?

在上方輸入舊網址。TrueURL 會在不自動追蹤重新導向的情況下要求該網址,並顯示每個躍點確切的狀態碼。在命令列中,curl -I https://example.com/old-page 只會顯示第一個回應,除非加上 -L,而且它無法偵測 meta refresh 或 JavaScript 重新導向。我們的網址重新導向檢查指南說明了 curl 的各個選項。

301 轉址會完整傳遞 SEO 價值嗎?

Google 表示,301、302 和其他伺服器端重新導向都不會流失 PageRank。不同之處在於標準網址(canonical)訊號:301 會告訴 Google 將新網址編入索引,302 則暗示保留舊網址。等兩個網頁都重新檢索之後,排名通常就會轉移到新網址上並趨於穩定。

301 轉址應該保留多久?

Google 建議重新導向至少保留一年,而永久保留更為保險:舊連結、書籤和其他網站上的參照,多年後仍會繼續使用舊網址。保留一條重新導向規則幾乎不需要任何成本。

為什麼我的 301 轉址顯示為 302?

常見原因包括外掛程式或框架預設使用 302、CDN 或主機代管服務的規則在您的規則之前執行,或是快取了舊的回應。請逐一查看每個躍點:如果 302 來自您的規則所處理範圍以外的主機或路徑,就表示有其他層級加上了它。

瀏覽器會快取 301 轉址嗎?

會。瀏覽器可能會長時間快取 301 和 308 重新導向,經常持續到快取被清除為止,因此錯誤的 301 可能會持續影響已經跟隨過它的訪客。測試新規則時,請使用 302 或較短的 Cache-Control: max-age,確認無誤後再改為 301。TrueURL 不會快取回應,因此一律會顯示伺服器目前送出的內容。

308 轉址比 301 更好嗎?

就 SEO 而言並沒有,Google 對兩者的處理方式相同。只有在必須保留要求方法時,308 才比較好,例如接收 POST 要求的 API 端點。部分非常舊的用戶端無法理解 308,因此對網頁來說,301 仍是安全的預設選擇。

已刪除的網頁應該 301 轉址到首頁嗎?

只有在首頁確實是最佳替代網頁時才這麼做。Google 可能會將已移除網頁重新導向至首頁的情況視為軟性 404(soft 404)。請重新導向至最接近的對等網頁;如果沒有,就回傳 410 Gone 或 404 Not Found。