整合重複的網址

如果您有某一個網頁可透過多個網址存取,或者不同網頁上存在相似的內容 (例如同時提供行動版和電腦版網頁),Google 會將這些網頁視為相同網頁的重複版本,從中選出一個網址做為「標準」版本進行檢索,然後將其他網址判定為「重複」網址並降低檢索頻率。

如果您未將標準網址明確告知 Google,Google 會自行選擇標準網址,或是認定標準及重複網址的參考權重相同,這可能會導致某些非預期的行為,詳情請見選擇標準網址的原因一節。

Googlebot 如何建立索引及選擇標準網址

為網站建立索引時,Googlebot 會嘗試判定各個網頁的主要內容。如果 Googlebot 發現同一網站有多個網頁的內容相近,就會自行選擇內容最完整實用的網頁做為標準網頁。為了減少 Google 在網站上的檢索工作量,標準網頁將會是 Google 檢索最頻繁的網頁,其他重複網頁的檢索頻率則較低。

Google 會根據許多因素 (或稱「信號」),例如網頁採用 HTTP 或 HTTPS、網頁品質高低、是否在 Sitemap 中提供網址,以及是否加上任何 rel=canonical 標記。您可以利用這些方式向 Google 告知您偏好的標準網頁,但 Google 仍可能基於各種原因選擇其他網頁。

一個網頁的不同語言版本只有在主要內容都是同一種語言時,才會視為重複網頁。也就是說,如果網頁只有標頭、註腳和其他次要文字經過翻譯,但主體部分仍是同一種語言,就會視為重複網頁。

Google 在評估網頁的內容和品質時,會以標準網頁為主要依據。Google 搜尋結果通常會指向標準網頁,除非有某個重複網頁更明確符合使用者的需要。舉例來說,當使用者透過行動裝置進行搜尋時,即使標準網頁是電腦版網頁,搜尋結果仍有可能指向行動版網頁。

保留相似或重複網頁的合理因素

有許多合理因素可能造成您的網站出現不同的網址指向同一個網頁,或是內容重複或非常相似的網頁位於不同的網址。最常見的原因如下:

  • 為了支援多種裝置類型
    https://example.com/news/koala-rampage
    https://m.example.com/news/koala-rampage
    https://amp.example.com/news/koala-rampage
  • 為了支援搜尋參數或工作階段 ID 等元素而採用動態網址
    https://www.example.com/products?category=dresses&color=green
    https://example.com/dresses/cocktail?gclid=ABCD
    https://www.example.com/dresses/green/greendress.html
  • 同一篇文章置於網誌的不同版面底下時,系統會自動儲存多個網址
    https://blog.example.com/dresses/green-dresses-are-awesome/
    https://blog.example.com/green-things/green-dresses-are-awesome/
  • 伺服器經過設定,會針對 www/非 www、http/https 版本的網址提供相同的內容
    http://example.com/green-dresses
    https://example.com/green-dresses
    http://www.example.com/green-dresses
    
  • 從您的網誌聯合發布到其他網域中網站的內容,與原始內容相比有部分或完全重複的情況:
    https://news.example.com/green-dresses-for-every-day-155672.html (聯合發布文章) https://blog.example.com/dresses/green-dresses-are-awesome/3245/ (原始文章)

選擇標準網址的原因

基於以下原因,我們建議您在一系列重複或相似的網頁中明確選擇一個標準網頁:

  • 為了指定要顯示在搜尋結果中的網址。例如,您可能想讓使用者透過 https://www.example.com/dresses/green/greendress.html 進入綠色洋裝商品網頁,而非 https://example.com/dresses/cocktail?gclid=ABCD
  • 為了整合相似或重複網頁的連結信號。這可協助搜尋引擎將個別網址的資訊 (例如造訪連結) 整合成您偏好的單一網址。不過,這也表示從其他網站連至 http://example.com/dresses/cocktail?gclid=ABCD 的連結,會與連至 https://www.example.com/dresses/green/greendress.html 的連結整合。
  • 為了簡化單一產品或主題的追蹤指標。如果使用多個不同的網址,會難以針對某項特定內容取得整合性指標。
  • 為了管理聯合發布內容。如果您以聯合發布方式在其他網域發布內容,建議確保搜尋結果中顯示的是您偏好的網址。
  • 為了避免耗時檢索重複網頁。您會希望 Googlebot 在檢索您的網站時發揮最佳效能,盡量把時間花在檢索最新網頁或有更新內容的網頁,而不要檢索同一網頁的不同版本,例如電腦版和行動版。

判斷 Google 認定的標準網頁

您可以使用網址檢查工具來判斷 Google 認定的標準網頁。

指定標準網頁

如要為重複網址或相似網頁指定標準網址,請選擇下列其中一種方法,並且務必遵循一般指南

方法和說明
rel=canonical <link> 標記

在所有重複網頁的程式碼中加入 <link> 標記,指向標準網頁。

優點:
  • 可對應的重複網頁數量不限。

缺點:

  • 網頁檔案可能會因此變大。
  • 如果網站規模較大,或是其中的網址經常變更,對應關係的維護作業會變得複雜。
  • 僅適用於 HTML 網頁,不適用於 PDF 這類檔案;您可以針對這類檔案改用 rel=canonical HTTP 標頭。
rel=canonical HTTP 標頭

在網頁回應中傳送 rel=canonical 標頭。

優點:

  • 網頁檔案不會變大。
  • 可對應的重複網頁數量不限。

缺點:

  • 如果網站規模較大,或是其中的網址經常變更,對應關係的維護作業會變得複雜。
Sitemap

在 Sitemap 指定標準網頁。

優點:

  • 易於實作及維護,特別是對大型網站。

缺點:

  • Googlebot 仍須根據您在 Sitemap 中宣告的所有標準網頁判別相關聯的重複網頁。
  • 對 Googlebot 來說,Sitemap 的信號效力不及 rel=canonical 對應做法。
301 重新導向 使用 301 重新導向告知 Googlebot,重新導向的網址是優於指定網址的版本。只有在要淘汰重複的網頁時,才適用這個方法。
AMP 版本 如果其中一個網頁版本是 AMP 網頁,請按照 AMP 指南的說明,指出標準網頁和 AMP 版本。

一般指南

所有標準化方法均適用以下一般指南:

  • 請勿將 robots.txt 檔案用於標準化。
  • 請勿使用網址移除工具執行標準化,以免系統從搜尋結果中移除同一網址的「所有」版本。
  • 無論採用單一或多種標準化做法,請勿為相同網頁指定不同的標準網址。舉例來說,請勿在 Sitemap 中為網頁指定一個網址,卻又使用 rel="canonical" 為同樣的網頁指定另一個網址。
  • 請勿使用 noindex 將網頁排除在標準網頁的選擇範圍之外。這個指令的用途是禁止網頁編入索引,而不是用來管理標準網頁的選項。
  • 使用 hreflang 標記時,請指定同一種語言的標準網頁,如果沒有的話,則可指定最佳替代語言的標準網頁。

  • 與網站內部的網頁建立連結時,請連結至標準網址,而非重複網址。如果能一致地連結至您認定的標準網址,有助於 Google 瞭解您的偏好。

使用 HTTPS 網址 (而非 HTTP 網址) 做為標準網址

認定網頁的標準網址時,Google 偏好 HTTPS 網頁而非 HTTP 網頁,除非有下列問題或衝突情形:

  • HTTPS 網頁含有無效的安全資料傳輸層 (SSL) 憑證。
  • HTTPS 網頁含有不安全的相依關係 (圖片除外)。
  • HTTPS 網頁會將使用者重新導向 HTTP 網頁,或透過 HTTP 網頁進行重新導向。
  • HTTPS 網頁中含有指向 HTTP 網頁的 rel="canonical" 連結。

根據預設,我們的系統偏好 HTTPS 網頁而非 HTTP 網頁,不過您仍可採取下列任一做法,確保這種行為不會遭到覆寫:

  • 新增重新導向,從 HTTP 網頁指向 HTTPS 網頁。
  • 新增 rel="canonical" 連結,從 HTTP 網頁指向 HTTPS 網頁。
  • 導入 HTTP 嚴格傳輸安全性機制。

請勿採用下列做法,以免 Google 誤將 HTTP 網頁當成標準網頁:

  • 使用無效的傳輸層安全標準 (TLS)/安全資料傳輸層 (SSL) 憑證,以及 HTTPS 至 HTTP 重新導向。原因是這些做法很有可能造成 Google 偏好 HTTP 網頁,即使導入 HTTP 嚴格傳輸安全性機制也無法覆寫這項偏好設定。
  • 在 Sitemap 或 hreflang 項目中加入 HTTP 網頁,而不是 HTTPS 版本。
  • 採用誤植主機名稱版本的安全資料傳輸層 (SSL)/傳輸層安全標準 (TLS) 憑證,例如在 example.com 提供 www.example.com 的憑證。請務必採用與完整網站網址相符的憑證,或是可供單一網域中多個子網域使用的萬用憑證。

僅適用於進階使用者:要求 Google 忽略動態參數

您可以透過參數處理功能,告知 Googlebot 在檢索時應忽略哪些參數。忽略特定參數能夠減少 Google 索引中的重複內容,讓您的網站更容易檢索。舉例來說,如果您指定忽略 sessionid 參數,Googlebot 就會將以下兩個網址視為重複:

  • https://www.example.com/dresses/green.php?sessionid=273749
  • https://www.example.com/dresses/green.php

您可以在 HTML 網頁的 head 區段中使用 <link> 標記,指出該網頁與其他網頁重複。

假設有多個網址都能存取相同的內容,而您想將其中的 https://example.com/dresses/green-dresses 指定為標準網址,請按照下列步驟操作:

  1. 使用 rel="canonical" link 元素來標記所有重複網頁。

    在重複網頁的 <head> 區段中加入包含 rel="canonical" 屬性的 <link> 元素,指向標準網頁。例如:

    <link rel="canonical" href="https://example.com/dresses/green-dresses" />
  2. 如果標準網頁有行動版本,請加入指向行動版網頁的 rel="alternate" 連結:
    <link rel="alternate" media="only screen and (max-width: 640px)"  href="http://m.example.com/dresses/green-dresses">
  3. 為網頁加上 hreflang 或其他適當的重新導向。

使用 rel="canonical" HTTP 標頭

如果您能設定伺服器,就可以使用 rel="canonical" HTTP 標頭 (而非 HTML 標記),為 Google 搜尋支援的文件 (包括 PDF 檔案等非 HTML 文件) 指定標準網址。

若您透過多個網址提供 PDF 檔案,可以傳回 rel="canonical" HTTP 標頭,將 PDF 檔案的標準網址告知 Googlebot:

Link: <http://www.example.com/downloads/white-paper.pdf>; rel="canonical"

Google 目前僅針對網頁搜尋結果支援這個方法。

使用 Sitemap

您可以為每個網頁挑選一個標準網址,然後透過 Sitemap 提交。Sitemap 中列出的所有網頁都代表您建議的標準網頁,Googlebot 會根據內容相似度判斷是否有重複的網頁,以及哪些網頁發生重複。

我們「不保證」一定會將 Sitemap 中的網址視為標準網址,但 Sitemap 是為大型網站定義標準網址的簡易方法,也很適合用來告知 Google 您認為網站上的哪些網頁最重要。

請勿在 Sitemap 中加入非標準網頁。如果您使用了 Sitemap,其中只能指定標準網址。

針對已停用的網址使用 301 重新導向

如果您要淘汰現有的重複網頁,但必須確保在舊網址失效前能順利進行轉換,請採用這個方法。

假設使用者可透過以下多個網址存取您的網頁:

  • https://example.com/home
  • https://home.example.com
  • https://www.example.com

請選擇其中一個網址做為標準網址,然後使用 301 重新導向將其他網址的流量傳送到您偏好的網址。使用伺服器端 301 重新導向,是確保使用者和搜尋引擎都能導向正確網頁的最佳方式,301 狀態碼表示網頁已永久遷移至新的位置。

如果您使用網站代管服務,請搜尋該服務的說明文件,瞭解如何設定 301 重新導向。

疑難排解

當標準網址不在您擁有的資源中時,您將無法查看相關重複網頁的流量。以下這些常見原因可能導致系統將另一個資源中的網頁視為標準網址:

  • 語言版本標示錯誤:如果您有多個網站分別針對世界各地的使用者提供大致相同的本地化內容,請務必遵守我們對本地化網站的規範
  • 不當使用標準標記:有些內容管理系統 (CMS) 或 CMS 外掛程式在執行標準化時可能出錯,誤將外部網站的網址設為標準網址。請檢查您的內容,看看是否發生這種情形。如果網站誤用 rel="canonical" 或 301 重新導向,因而指定了不符合您偏好的標準網址,請直接修正問題。
  • 伺服器設定錯誤:某些代管設定錯誤可能會導致演算法選擇非預期的跨網域網址。例如:
    • 伺服器可能設定錯誤,例如針對 a.com 上的網址要求傳回 b.com 的內容
    • 兩個不相關的網路伺服器可能會傳回相同的轉址式 404 錯誤網頁,但 Google 無法識別這些錯誤網頁。
  • 遭到駭客惡意入侵:有些攻擊方式是在網站植入傳回 HTTP 301 重新導向的程式碼,或是在 HTML <head> 或 HTTP 標頭中插入跨網域的 rel="canonical" link 元素。此類程式碼和元素通常會指向代管惡意內容或垃圾資訊的網址,在這些情況下,我們的演算法可能會選擇惡意網址或垃圾資訊網址,而非遭入侵網站上的網址。
  • 涉及抄襲的網站:在少數情況下,我們的演算法會選取外部網站的網址,這是因為該網站未經授權即發布您的內容所致。如果您認為其他網站複製您內容的方式違反了著作權法,請與該網站的負責人聯絡,要求對方移除涉及侵權的內容。此外,您也可以根據《數位千禧年著作權法》(DMCA) 提出申訴,請 Google 從搜尋結果中移除侵權網頁。