重定向與 Canonical URL 設定說明:搜尋引擎如何判斷網頁正規版本

Published on: | Last updated:

開場:所以,重定向和 Canonical 到底差在哪?

OK,今天來弄懂這個。重定向(Redirect)跟 Canonical URL(標準網址)。這兩個東西常常一起出現,尤其是在處理 SEO 的「重複內容」問題時。 但它們根本不是同一回事。一個是強制命令,一個是溫柔建議。用錯了,網站的 SEO 權重會被分散,排名往下掉。 簡單講,就是跟搜尋引擎溝通的方式不一樣。

我自己的筆記習慣是,先把這兩個東西想像成生活中的場景。一個是搬家,另一個是指定分身裡的本尊。這樣比較好記。

先說結論:一個是搬家通知,一個是指定本尊

301 永久重定向 (301 Redirect):這就像是你家永久搬遷了。 你在舊家門上貼了個大大的公告:「我搬到新地址了,以後請直接去那裡找我。」所有訪客(使用者)和郵差(搜尋引擎爬蟲)都會被直接帶到新家。舊家地址等於作廢,所有信件、包裹(SEO 權重、連結價值)都會自動轉寄到新家。 這是強制性的,沒有商量餘地。

rel="canonical" 標籤:這比較像... 你有很多長得很像的雙胞胎兄弟姊妹,但你才是本尊。當有人問 Google:「誰才是真正的你?」你就透過這個標籤指著自己說:「是我啦!」 那些長得很像的頁面,例如因為 UTM 參數、篩選功能或行動版產生的不同網址,但內容都一樣的頁面,都可以繼續存在,使用者也能看到。 但你只是「建議」Google:「嘿,這些頁面的功勞(排名訊號)都算在我頭上就好。」Google 通常會聽,但不是百分之百。 說到底,它還是一個信號,不是命令。

概念區別:強制轉向 vs. 訊號指引
概念區別:強制轉向 vs. 訊號指引

Google 到底怎麼看這兩件事?

從搜尋引擎的角度來看,這兩者傳遞的「信號強度」完全不同。Google 官方文件有提到,重定向是「強烈信號」,而 `rel="canonical"` 雖然也是強烈信號,但 Sitemap 只是「微弱信號」。 這點很重要。強烈代表 Google 會優先採納。

當 Google 爬蟲遇到 301 重定向,它會理解成「舊的 URL 已經永久失效,以後請更新索引,改用新的 URL」。 這是一個非常明確的指令。而且,大部分的連結權重 (Link Equity) 都會被轉移到新網址。

但遇到 Canonical 標籤,Google 的反應比較像是:「喔,了解了。你建議我把這個頁面當作主要版本。」 在大多數情況下,Google 會整合這些重複頁面的信號到你指定的標準網址上。 但如果 Google 覺得你亂標,例如 Canonical 指向的頁面內容跟當前頁面差太多,它可能會直接忽略你的建議,自己選一個它認為最適合的版本。 所以說,這是一個信任遊戲。

還有一個關鍵是使用者體驗。301 Redirect 會直接改變瀏覽器上的網址,使用者會被帶到新頁面。 但 Canonical 標籤對使用者是完全透明的,他們停留在哪個網址,瀏覽器就顯示哪個網址,完全不會察覺背後有 SEO 的操作。

帶有追蹤參數的重複網址,是 Canonical 的典型應用場景
帶有追蹤參數的重複網址,是 Canonical 的典型應用場景

實戰場景:什麼時候用哪個?

好了,理論講完,直接看表格最快。這是我整理的決策筆記,什麼情況該用哪個,一目了然。

判斷依據 301 重定向 (Redirect) Canonical 標籤
使用情境 舊頁面真的「死掉了」,完全不想讓任何人看到。像是網站改版換網址、HTTP 轉 HTTPS、產品下架。 頁面們都「活著」,也都需要被使用者看到,只是想跟 Google 說誰是老大。例如,商品頁有多種顏色規格、有 UTM 參數的行銷網址。
對使用者的影響 使用者會被強制帶到新網址,瀏覽器上的 URL 會變。 蠻直接的。 使用者完全沒感覺,URL 不會變。 他們看的是 A 頁面,但背後你可能跟 Google 說 B 頁面才是正宗。
對搜尋引擎的強度 超級強烈!是「命令」。Google 官方都說是強烈信號,基本上一定會遵守。 算強烈,但只是「建議」。Google 通常會聽,但如果它覺得你的建議很瞎(比如內容完全不同),它有權不理你。
權重轉移 絕大部分的連結權重 (PageRank) 會被轉移到新頁面。 幾乎是無損搬家。 也是為了集中權重,把分散在各分身頁面的信號,全部灌給本尊頁面。
實作難度 通常需要動到伺服器設定 (.htaccess) 或主機後台,對新手來說比較麻煩一點。 相對簡單,只要在 HTML 的 區塊加一行程式碼就好。 很多 CMS 系統(像 WordPress)都有外掛可以輕鬆搞定。

常見的坑:別這樣亂用

講幾個我踩過或看過的雷。這比搞懂定義還重要。

  • Redirect Chain(重定向鏈):A 轉到 B,B 又轉到 C... 這種連環轉址超浪費檢索預算,而且每轉一次,權重就可能耗損一點。Google 爬超過大概 5-10 次可能就不想理你了。 要盡量讓重定向一步到位。
  • Canonical 指向錯誤的頁面:最常見的就是 Canonical 指到一個 404 頁面,或是也設了 noindex 的頁面。這等於是跟 Google 說:「我的本尊頁面不存在」,超蠢的。
  • 內容差異太大的頁面互指:如果 A 頁面是講「蘋果」,B 頁面是講「橘子」,你卻在 A 頁面設定 Canonical 指向 B,Google 只會覺得你在亂搞,然後大概率會忽略這個設定。
  • HTTP/HTTPS 混用:網站已經是 HTTPS 了,但 Canonical 卻還指向舊的 HTTP 版本。這會讓 Google 感到困惑。 應該統一版本,最好是搭配 301 重定向,將所有 HTTP 的流量都導到 HTTPS。
檢索效率對比:混亂的爬取路徑 vs. 清晰的引導
檢索效率對比:混亂的爬取路徑 vs. 清晰的引導

所以到底哪個比較「強」?

回到最初的問題。如果只論「強制力」,那 301 重定向絕對是贏家。 它是直接釜底抽薪,讓舊網址從此消失在使用者和搜尋引擎的視野中。Canonical 則是一種更細膩、更具彈性的管理方式,它允許重複頁面繼續為不同目的服務(例如行銷追蹤),同時又能集中 SEO 權重。

所以沒有誰比較好,只有哪個比較適合你的當下情境。 關鍵在於,你到底想不想讓使用者或 Google 再看到「舊的」或「重複的」那個網址。如果答案是「完全不想」,那就用 301。如果答案是「頁面要留著,但希望 Google 把功勞算在主頁上」,那就用 Canonical。

最後,Google 官方其實也說,就算你沒設定,它們也會自己試著找出標準網址。 但...你真的敢把網站的命運完全交給演算法嗎?我自己是不敢啦,能自己控制的,還是自己來最保險。


換你說說看:你遇過最頭痛的重複內容情境是什麼?最後是用 301 還是 canonical 解決的?在下面留言分享一下你的實戰經驗吧!

Related to this topic:

Comments

  1. profile
    Guest 2025-11-05 Reply
    其實這件事我以前真的有點不太在意,就是那個 canonical URL 啦。講白一點,我那時候覺得,啊設那個到底有什麼用?結果有一次就,嗯怎麼說,好像沒設還是怎樣,反正被搜尋引擎抓了一堆重複頁面出來,哇整個排名就亂掉,而且修起來超級煩的。雖然我一開始還半信半疑啦,但後來就慢慢全部都乖乖加回去了。唉,有時候小東西真的是不能偷懶欸。
  2. profile
    Guest 2025-09-03 Reply
    在國際 SEO 戰場上,重定向和 Canonical 簡直是神兵利器!曾經在多個跨境專案中,這招救了我不少網站權重。老實說,技術細節真的很迷人,尤其是跨語系的優化策略...
  3. profile
    Guest 2025-07-01 Reply
    請問這篇文章對於我孩子的網站經營有幫助嗎?他最近想要做部落格,聽說SEO很重要,但我完全不懂這些技術名詞。可以簡單解釋一下嗎?