重複內容診斷與處理:三個問題找出對的解法

重複內容多半不會被 Google 處罰,搜尋系統真正在做的是分群與選出代表網址。用三個問題把狀況分到網址層、內容層或外部層:網址層盤點三組來源,內容層用搜尋意圖決定合併或分工,外部層依授權與被抄分場景處理,再依層級選擇 301、canonical、noindex 或 robots.txt,避開過度修正的傷害,用網址檢查、索引報表與整站爬蟲驗收,把版本之間的訊號收斂成共識。
週一早會,老闆把手機螢幕轉向會議桌:搜尋公司品牌名,結果頁出現兩個內容一模一樣的頁面,其中一個網址結尾還掛著一串參數。問題直接拋給行銷團隊,我們是不是被 Google 處罰了?沒有人當場答得上來,會議在一句「查清楚再回報」之後散會。
這種截圖幾乎都不是災難。絕大多數正常運作的網站,都帶著重複版本在跑:有 www 與沒有 www 的網址、加上排序參數的分類頁、授權出去的轉載文。搜尋系統預設重複存在,處理的動詞是收斂,不是扣分。面對一群相近的網址,系統會把它們歸成一組,自己挑一個代表版本放進結果;挑選的結果符不符合你的預期,取決於你給的訊號亂不亂。真正值得管理的,是版本之間有沒有共識;想把重複清零,既不需要,也做不到。
判斷的動線可以很短:先回答三個問題,把狀況分到網址層、內容層或外部層,再依層級取處置條件。不需要先變成技術專家,讀到屬於你的那一層,就知道該用 301、canonical、noindex 還是 robots.txt,以及改完之後要去哪裡確認生效。
快速重點:一般重複內容不會被 Google 處罰,要處理的是版本之間的訊號共識。網址層用 301 或 canonical 收斂代表網址,不必出現在搜尋結果的頁面交給 noindex,單純管理抓取用 robots.txt。真正踩到政策紅線的,是大規模抄襲與刻意量產的操弄。
重複內容到處都是,先別急著把它當危機
先回答最讓人焦慮的問題:看到疑似重複的跡象,需要立刻動手嗎?多半不需要。搜尋系統每天處理的網頁裡,重複是常態,對應的工程做法早就內建:分群、選代表、把訊號歸併到代表版本。網站帶著幾個重複網址運作,屬於管理課題,不是違規事件。與其先慌,不如把問題分到對的層級再出手。
懲罰的說法之所以流傳,有三個來源。一是「懲罰」兩個字好記好傳,比「分群與過濾」更容易在會議室裡擴散;二是被過濾掉的版本從結果頁消失,看起來的確像被罰;三是內容農場時代的大規模整治留下陰影,讓人把所有重複都聯想到那一波。Google 早在 2008 年的官方文章裡就把界線畫清楚:一般性的重複內容不構成處罰,除非背後的意圖是欺瞞搜尋系統、干擾排名秩序;系統做的只是從一群相近版本裡挑一個顯示(2008 年 Google 對重複內容懲罰之說的澄清)。那個年代低價值內容整治的來龍去脈,可以另看熊貓演算法的介紹。
什麼時候才需要真的緊張?看意圖,不看數量。報表裡大量網址來自整批搬運別人的內容、站上突然湧入自動生成的相近頁面、或用多個版本企圖佔滿同一組搜尋結果,這些已經不是版本收斂問題,而是垃圾政策處理的範圍。反過來說,正常的授權轉載、測試環境外洩、篩選功能產生的變體,都落在管理這一側,用訊號處理就夠了。
與其問「有沒有重複」,不如改問三個問題。第一問:同一份內容,是不是掛在多個網址上?參數、www、http、結尾斜線都算,這是網址層。第二問:站上是不是有兩篇文章,內容價值高度重疊?這是內容層。第三問:這份內容,是不是也出現在別的網站上?授權轉載與被抄都在這一層。三個答案各自通往不同的處置邏輯,先分診,再動手,才不會拿內容手段去解技術問題,或反過來。
左右捲動檢視完整表格
| 你的答案 | 問題層級 | 後續動作 |
|---|---|---|
| 同一份內容掛在多個網址 | 網址層 | 盤點三組來源,再依條件選工具 |
| 站內兩篇文章價值重疊 | 內容層 | 用搜尋意圖決定合併或分工 |
| 內容出現在別的網站 | 外部層 | 依授權或被抄兩種劇本處理 |
| 多頁搶同一組字、內容不重複 | 關鍵字自我競爭 | 走專文流程,不在這條動線內 |
分診有現成的入口。Google Search Console 的網頁索引報表裡,「重複網頁,Google 選擇了不同的標準網址」這個狀態會列出被歸為重複的範例網址;報表只給樣本,要確認單一網址,得再用網址檢查功能看細節。各欄位怎麼讀,可以對照網頁索引報表的完整解讀。要是你看到的其實是多個頁面輪流搶同一組關鍵字、內容本身並不重複,那屬於關鍵字自我競爭,判斷與處理走專文的處理流程,不要套用這裡的工具邏輯。
Google 的處理方式:先分群,再選一個代表網址
要知道自己能控制什麼,先看系統實際做了什麼。整條索引管線以網址為基本單位:每個網址分開被抓取、分開被評估。當系統發現多個網址的主要內容相同或極相近,會把它們歸成一群,綜合訊號選出一個代表版本放進搜尋結果。這個歸群與挑選的過程叫標準化(canonicalization),介面上譯作「標準網址」的 canonical,指的就是被選出的那個版本,後文一律稱代表網址。
一個常被寫錯的細節:沒被選中的版本不是被刪除,也不等於以獨立頁面的身分留在索引裡。Google 會抓取這些網址、把它們歸進群組,但群組正式編入索引的條目通常只有代表版本;其餘網址在網頁索引報表裡,被列在「重複網頁,Google 選擇了不同的標準網址」這類未編入索引的原因之下。「落選網址從此消失」與「落選網址照樣查得到」兩種說法都不精確:網址仍在系統的掌握裡,索引身分則落在代表版本上。同樣地,你宣告的偏好也不保證每次都被採用。偏好是強訊號,不是決定權,這是所有處置工具共用的一條底線。實務上的意義跟著出來:驗收時不能只看某個網址有沒有出現在結果頁,要比對的是代表版本換成誰、訊號有沒有歸攏。
代表版本聽誰的?系統綜合幾類線索:頁面上宣告的 canonical、伺服器轉址、sitemap 裡列出的網址,以及內部連結與外部連結各自指向哪些版本。連結的累積與傳遞怎麼運作,反向連結指南講得比較完整。當這些線索指向同一個版本,選擇通常可以預期;當它們彼此矛盾,系統只能自行判斷,結果未必符合你的盤算。這也是為什麼連結佈局要指向同一個目標:不是為了畫面整齊,是為了讓答案唯一。
定義可以從機制倒推:兩個以上的網址,指向相同或極相近的主要內容,就構成重複內容。一模一樣的是完全重複;大體相同、只差局部的是近似重複。判定看主要內容,導覽列、頁尾、版型相同都不算數,標題或描述相似也不足以定案。分群、代表網址、訊號整併這三個詞,說的都是這條管線的不同段落,後續章節會一直沿用。要深入指定代表網址的各種方法,看canonical 的完整指南。
沒有懲罰,實際損失從哪裡來:訊號分裂的三個層面
「不罰」不等於「不用管」。放著一群重複網址不管,代價從三個層面慢慢累積,共同的源頭是訊號分裂:本來該集中在同一個版本的訊號,被拆散到多個網址上。
第一層在連結。別人連到你的網站時,有人連 www 版,有人連 http 版,有人連帶參數的版本。每個版本各自累積一部分連結,整併時系統得把這些訊號拼回同一個代表版本,結果就變得難以預期。你說不清楚哪個頁面真正累積了多少支持,系統的選擇也跟著擺盪。站內自己的連結也一樣:選單、麵包屑與文章內文若各自連向不同版本,等於每天都在投互相矛盾的票。這不是分數被砍,是訊號被打散之後,一切都不穩定。
第二層在抓取。系統分配給一個網站的抓取資源有限,變體網址一多,資源就被分掉。幾十頁的小網站通常感覺不到差別;上千上萬頁、或內容更新頻繁的網站,重要頁面被重新抓取的頻率可能被排擠,新上線的頁面也要排更久的隊。資源怎麼分配、怎麼改善,檢索預算的討論有完整脈絡。
第三層在量測,而且要分工具看。Search Console 的搜尋成效,多半會歸到系統選定的代表網址上:代表版本若不是你想顧的那一個,你盯著的網址在報表裡可能安靜得像沒有流量,數字其實記在別的版本名下。網站分析工具則相反,工作階段與跳出率跟著訪客實際落地的網址分列,同一份內容會拆成好幾筆看起來平庸的紀錄。判讀前先把兩邊的口徑對齊:分析端把已知變體併進同一個維度,Search Console 端先確認代表版本是誰,數字才有意義,否則你是在替同一個頁面寫好幾份互相矛盾的診斷書。
三個層面指向同一個結論:所有處置工具,本質都是在給訊號。301、canonical、noindex、robots.txt 各管一段,能發揮作用的前提卻相同,站內給系統的答案要一致。訊號一致,比任何單一設定都重要。
這些重複網址是怎麼被生出來的:三組來源
網址層的重複,來源可以收斂成三組。分組的價值在於每組對應不同性質的修法,比背一長串編號成因實用:認出網址屬於哪一組,工具就少一半猶豫。
第一組,進站版本沒統一。www 與沒有 www、http 與 https、結尾有沒有斜線、路徑大小寫不同的寫法,只要伺服器對每一種都照樣回應內容,同一個頁面就同時掛著好幾個身分。結尾差一條斜線、或大小寫換個拼法,在不少伺服器的認定裡屬於兩個分開的網址,回傳的內容卻一模一樣。外部連結、通訊錄裡的舊網址、印在名片上的連結,會各自帶訪客從不同的門進來。修法叫網址正規化:選定一個版本,其餘全部轉址或收斂過去。www 與非 www 的選擇、http 換 https 的安排,各自有完整的設定做法。
第二組,網站功能自動產生的變體。分類頁的排序與篩選參數、清單的分頁,都會讓同一份主要內容換上不同網址。用一個構建情境看數量怎麼膨脹(情境為假設,非指特定網站):某個中型電商的商品分類頁提供價格排序、顏色篩選、價格區間三種功能,訪客每套用一種組合,網址就跟著換一組。商品一件沒多,這個分類頁在系統眼裡卻從一頁變成數十頁,而每個變體都被當成獨立頁面對待。參數的類型與生成邏輯,查詢參數的基礎介紹有整理。有一段歷史要交代:Google 曾在 Search Console 提供網址參數工具,讓站方直接告訴系統某個參數要不要理會,但已在 2022 年停用(官方停用公告)。過去依賴那個介面做設定的網站,等於退回沒有設定的狀態,要改用頁面本身的訊號與網址生成規則來處理變體。
第三組,環境與多版本發布。開發中的測試站若沒有登入保護,網址一旦外洩就可能被抓取收錄;robots.txt 擋得住爬蟲,擋不了拿著網址直接輸入的真人,它從來不是權限控制。產品資料交換是另一個安靜的來源:供應商給的規格文字,多家通路原封不動貼上,同一份描述就同時存在於多個網站。這類共用文字要靠自家的實測心得、比較表格或使用觀點,把主要內容的差異拉開,光靠調網址救不了。
三組來源對應的修法深度不同:進站版本靠正規化一次解決;功能變體要在頁面訊號與網址生成規則上處理;環境與發布問題則回到權限與內容差異化。先認出來源,等於先決定要走哪一條修法,再談工具。
兩篇文章很像時,先問搜尋意圖再決定合併或分工
內容層的重複,判斷基準只有一個:讀者的任務。兩篇文章主題相近時,先別急著合併,問自己兩件事。看完 A 之後,是不是就等於看完 B?把兩篇各自鎖定的關鍵字拿去搜尋,排上來的是不是同一批頁面?兩個答案都指向「同一個任務」,就整併;任何一個指向「不同任務」,就分工。搜尋意圖的判讀方法可以先看過再回來。
整併的做法很單純:留下架構與深度較好的一篇,把另一篇還有用的素材併進去,補成一篇更完整的長文,被併掉的網址用 301 指到新位置。讀者少繞一次路,站內訊號也收在同一個地方。
反過來,搜尋意圖不同時,合併反而兩邊都不討好。一篇服務剛認識概念的人,另一篇服務要動手設定的人,讀者任務不一樣,硬塞進同一篇,只會讓兩種人都讀到一半就想離開。該做的是讓兩篇各自成立:受眾、任務與深度明確拉開,切入角度不互相覆蓋,再用內部連結把想往下走的讀者接到另一篇。這時要補的是差異與資訊增量,指的是這一頁提供了搜尋結果裡其他頁面都沒有的資訊;canonical 在這個情境幫不上忙,因為兩篇本來就該各自存在,不是誰是誰的副本。資訊增量的概念與內部連結的建置方法,都有專門的討論。

分工之後,差異要落在讀者看得到的地方:切入的角度、舉的例子、深入的層次、行動呼籲。標題、描述這些頁面元素跟著差異走,on-page SEO 的基本工在這裡生效。轉換目的不同的兩篇更不該硬併:一篇幫讀者理解概念,一篇促成詢問或購買,讓它們待在漏斗的不同位置,各自對不同階段負責,成效也才分得清楚。
這一層的解法是編輯手段,與網址層的工具邏輯要分開看。canonical 與 301 處理「同一份內容掛多個網址」,內容層處理「兩份內容價值重疊」;前者給訊號,後者做取捨。拿工具去解編輯問題,通常是設定改了一輪,兩篇文章的價值重疊原封不動。
301、canonical、noindex、robots.txt:用條件式問題選工具
確認問題在網址層之後,工具選擇交給三個條件式問題:這個網址還需不需要存在?使用者還需不需要打開它?你要它退出索引,還是退出抓取?答案的組合,會把你帶到幾乎唯一的工具面前。
左右捲動檢視完整表格
| 條件 | 工具 | 理由 |
|---|---|---|
| 網址確定不再需要(舊版、已整併、搬家後的舊路徑) | 301 永久轉址 | 訪客與訊號直接導向新網址,舊網址退場 |
| 頁面要保留、使用者還會打開,但版本之間要收攏 | canonical | 頁面仍在,宣告偏好的代表網址 |
| 頁面可以公開存取,但不該出現在搜尋結果 | noindex | 保持可抓取,讓系統讀到指令後退出索引 |
| 只想減少無效益網址被抓取,頁面上沒有需要被讀到的指令 | robots.txt | 管理抓取範圍,不處理收錄,也不是權限 |
301 的紀律在一對一。下架或整併後的頁面,轉向內容最相近的去處;真的沒有對應目標,讓它回 404 或 410,比硬導更誠實。把大批主題毫無關聯的舊網址一律導向首頁,是流傳最廣的誤用,等於告訴系統首頁跟那些內容都沾得上邊,主題訊號跟著變糊。轉址上線後要留一段觀察期,確認新網址被抓取與收錄的狀況接管了舊位置。整站搬家與網域整併這種大規模轉址,另有網站搬遷的完整流程可以照著做。
canonical 用在「頁面要留、訊號要收」的場合,三個原則守住就不容易出錯:代表頁自己的 canonical 指回自己;避免 A 指 B、B 又指 C 的連鎖;內部連結與 sitemap 指向同一個版本。三個原則在做同一件事,讓全站對「誰是代表」只給一種答案。設定的細節與常見錯誤,前面提過的 canonical 指南有完整整理。
noindex 與 robots.txt 是兩道不同的閘門,最常被混用。noindex 的意思是「可以抓,但不要收進索引」;robots.txt 的意思是「連抓都不必」。後者聽起來更強硬,實際藏著一個陷阱:頁面被 robots.txt 擋住時,系統進不了頁面,讀不到上面的 noindex 或 canonical,這個網址卻仍可能憑著外部連結被收錄,在搜尋結果裡以只剩網址、沒有內容描述的形態出現。要頁面退出索引,前提是讓系統讀得到頁面上的指令;而結帳、帳號、後台這類敏感頁面,該用的是登入與權限,robots.txt 從來不是鎖。

實務分工照這個邏輯走:要退出索引的公開頁面,例如站內搜尋結果或過渡性的篩選頁,用 noindex 並保持可被抓取;會無限增殖的參數路徑,確認頁面上沒有需要被讀到的指令之後,才用 robots.txt 減少抓取。兩者的界線與誤配案例,noindex 與 robots.txt 的比較逐項整理過;robots.txt 的寫法與生效範圍也有專門說明,設定前值得整篇看過,因為封錯區段會一次影響整個目錄。
看起來像重複、其實不該動手的頁面
有一類頁面常被誤判成重複,動了反而受傷。判準只有一條:這個頁面對使用者有沒有獨立的任務。有,就先別收斂,哪怕它在報表裡被歸進重複群組。
分頁排第一。清單的第二頁、第三頁,列出的商品或文章跟第一頁不同,主要內容本來就不一樣。每頁的 canonical 指向自己,並保留可被抓取的分頁連結,讓系統走得進後面幾頁。把所有分頁一律指到第一頁,等於替後面幾頁自願辦退場,那不是收斂,是刪除。
翻譯版本排第二。主要內容確實換成另一種語言時,通常不視為重複,各版本用 hreflang 標記互相對應即可;hreflang 是用來告訴系統「這幾個網址是同一內容的不同語言版本」的標記。同語言的不同地區版本,內容若高度相同,才需要選出偏好版本並搭配標記。多語系網站的架構規劃把這幾種情況分得比較細。無論哪種情況,都不該把所有翻譯版 canonical 到單一語言版本,那等於宣告其他語言不存在。
有真實用途的篩選頁排第三。某些篩選組合真的有人用、有明確任務,例如先鎖定色系再比價的訪客,這時先看分析數據再決定去留,不要為了讓索引報表乾淨而收掉訪客實際在用的頁面。數據要看的是流量與轉換的實際貢獻,不是網址看起來像不像。列印版、下載版這類功能頁同理,先問用途,再決定收斂方式。
過度修正的兩種典型傷害,值得抄在便條上:全站 canonical 一律指向首頁,讓系統對整站方向的判斷失準;把 robots.txt 當成移除索引的工具,讓頁面上真正的指令永遠沒被讀到。錯誤的收斂常比原本的重複更傷,因為它連有價值的頁面一起送走。
內容出現在別的網站:授權轉載與被抄的處理順序
外部層的疑問只有一句:我的內容出現在別的網站,代表權會不會被搶走?代表權由整體訊號決定,原作者不必然獲選,但授權與被抄是兩個劇本,處理順序完全不同,先分清楚再行動。
授權轉載,順序是先鞏固正本。在自己網站發布,等它被收錄,再往外投稿,並約定轉載版附上原文出處連結。用一個構建情境看取捨(情境為假設):某個內容站把一篇長文投到產業媒體的專欄,觸及放大了,代價是同一份全文多了一個網域更強勢的網址。要降低競爭,官方排查文件的建議是讓合作方以可被爬取的 noindex 處理轉載版,不建議只依賴跨網域的 canonical,因為轉載頁的整體內容往往和原文不完全相同。先發布、先被收錄、附上出處連結,每一項都提高正本獲選的機會,但沒有哪一項是保證。
被抄的劇本,情緒先放一邊,看系統怎麼判。原創來源靠綜合訊號判斷:發布時間、網站長期累積的信任、內部連結與結構化資料裡的線索。一個剛開站、沒有累積的抄襲站,要蓋過內容與連結都穩定的正版網站,機率通常不高,但不是零。確認被抄後的順序:保留發布紀錄與證據,確認正本可以被正常索引,聯繫對方要求移除,走不通再依你所在司法管轄適用的程序申訴。救濟管道各地不同,不要把單一國家的法律程序當成放諸四海的解法。
大規模的抄襲站屬於另一個層級,那是刻意的垃圾操作,不是重複管理問題,處理邏輯看黑帽手法的辨識與舉證。一般的授權合作與內容授權出去的各種形式,內容聯合發佈的常見模式整理過。日常要做的只有一件:定期用品牌字與文章標題搜尋,看結果裡的代表版本有沒有變化,SERP 的監測方法可以直接套用。
AI 內容量產時代,重複的判定標準沒有變寬
用 AI 輔助產文,是不是更容易累積出一堆被判為重複的頁面?工具變了,判準沒有變寬。大規模產製彼此相近的內容,風險一直都在,AI 讓「量」變得便宜,也讓「刻意」更容易被看出來。產線再快,每一篇送到讀者面前時,被檢驗的仍然是同一組問題:這篇為誰寫、解決什麼、比既有的結果多了什麼。
2024 年 3 月的核心更新把兩件事寫進規則:過去自成一套的實用內容系統,在這一波併入核心排名;垃圾政策同步強化,大規模內容濫用列為明確的處理對象(2024 年 3 月更新與垃圾政策公告)。判定看內容有沒有服務真人,不看它由誰寫。同一主題換長尾字詞量產十篇,字句不同不代表價值不同,系統問的是每一篇是否各自有清楚目的與實質貢獻。
另一個常見的期待也先收起來:AI 搜尋功能沒有特殊的標記可以申請,也沒有專屬的去重門檻。官方給 AI 功能的建議,仍是一般 SEO 的基本功:讓頁面維持可抓取、可索引的狀態,重要內容直接寫成文字,標記的內容跟畫面上看得到的一致(AI 功能與網站的官方指引)。
差異化的來源沒有捷徑,回到資訊增量與 E-E-A-T,也就是經驗、專業、權威、信任這組評估架構:第一手資料、親自量測的數據、只有這個站給得出的經驗,這些是改寫字句也取代不了的。四個面向怎麼累積與呈現,E-E-A-T 的完整指南有架構。低價值內容的整治一路走來,刻意量產、只改字句的操作,跟內容農場的手法只剩一線之隔,那條線就是有沒有為讀者提供真實價值。
怎麼確認處理生效:三個觀測點與檢查節奏
處理完成不等於結案,沿著機制反推,有三個觀測點可以驗收:單頁看宣告被沒被採納,全站看報表趨勢,潛在問題交給爬蟲。
單頁用網址檢查。在 Search Console 對單一網址執行檢查,比對「使用者宣告的標準網址」與「Google 選定的標準網址」。一致,代表訊號被採納;不一致時往兩個方向查:內容相似度是不是真的足以支撐你的宣告,技術訊號(內部連結、sitemap、轉址)有沒有互相矛盾,別急著歸因於訊號強度不夠。改完之後也要留時間給系統重新檢索與重新處理,短時間內看不到變化並不罕見。site: 指令可以當粗查,但結果本來就不完整,不能當判決。
全站看索引報表。網頁索引報表裡「重複網頁」的筆數,看趨勢比看單日數字有用,但它只能告訴你被歸為重複的網址變多或變少,不能直接當作「宣告被採納」的證據。趨勢往下,代表重複群組在縮小;收斂有沒有照你的宣告走,仍要回到網址檢查,對重要網址逐頁比對 Google 選定的代表版本。趨勢突然往上,先檢查最近的改版有沒有生出新的變體,再查內部連結與 sitemap 是不是又開始打架。
潛在問題交給整站爬蟲。Screaming Frog 的 Content 分頁會列出完全重複與近似重複的網址;近似重複要先在組態裡啟用,並跑完 Crawl Analysis 才有結果。重複的標題與 meta description 在各自的分頁查看,適合當收斂方向的初步線索。報告終究是線索,是不是重複,仍要把主要內容調出來比對,工具的完整操作可以對照Screaming Frog 的使用教學。
診斷結果出來後排優先序:先處理正在吃流量的變體、被選為代表的異常網址,一次改一小批,觀察一陣子再下一批,之後的變動才容易歸因。
- 新站上線前:www、https、結尾斜線三種正規化一次做齊,測試環境掛上登入權限。
- 改版或新功能上線後:跑一次整站爬蟲,比對變體數量有沒有暴增。
- 每季:看索引報表的「重複網頁」趨勢,抽幾個重要網址做網址檢查比對。
- 內容盤點時:把主題相近的文章兩兩配對,依搜尋意圖決定整併或分工。
- 對外合作之後:搜尋正本與轉載版,確認代表版本沒有易主,授權條件被遵守。
重複內容的管理是持續的網站衛生,不是一次交卷的專案。網站會改版、上功能、換合作對象,每個變動都可能長出新的版本;把三個分診問題、三組成因與四個工具的對應關係放在手邊,配合固定的檢查節奏,代表網址的選擇通常會慢慢往你宣告的方向靠攏。