看到“重复内容”這四個字,很多人的第一反應是加 canonical,或者直接 noindex。但重复本身不是一個動作,而是一類現象。同一個頁面被多個 URL 指向、翻頁與篩選頁主体几乎相同、參數带出大量變体,它們的處理方式並不一样。先分清類型,再决定合並還是保留,能少走不少弯路。
先確認一件事:重复是相對谁而言
搜尋引擎判断重复,看的是抓取到的内容主体,而不是你的心理预期。所以在處理前,先把几個 URL 的正文抽出来對比:去掉導航、頁脚、侧栏、推荐位這些模板部分之後,剩下多少是真正不同的。如果剩下的部分几乎没有差异,那么無论 URL 多規整,都属于同一份内容。
常见的四類重复,處理方式不一样
同一内容的多個 URL
例如带 www 與不带 www、http 與 https、带尾部斜杠與不带、大小寫混用。這類問题首選在服務器层面统一:301 到一個固定形態,同时把站内連結也改成這個形態。canonical 是兜底,不是替代品——如果站内還在到處鏈向舊形態,蜘蛛會持續發現它們。
主体相同、模板差异大
典型场景是列表翻頁、标簽聚合頁、篩選结果頁。它們内容主体高度重合,只是排序或篩選條件不同。這類頁面要看是否真有人會用:有獨立搜尋需求的(比如品牌词聚合)可以保留並做自指 canonical;纯粹由條件组合生成的,通常更适合 noindex,follow,同时保證這些 URL 不再出現在内鏈和 sitemap 里。
參數與排序變体
sort、page、from 這類參數會让同一份内容产生大量 URL。優先做參數收敛:确實影响内容的保留,纯跟踪用途的參數尽量不出現在站内連結里。canonical 指向不带參數的版本可以降低索引膨胀,但前提是頁面本身值得被收錄。
跨站與多端重复
同一篇文章同步到多個域名、移動端獨立域名、内容分發平台,都會形成跨域重复。搜尋引擎會自行判断原始出處,你能控制的是:站内不要同时保留多個發布入口,轉载内容标注来源,必要时用 canonical 指向原始版本。跨域场景下,指望一條标簽就决定归属,通常不現實。
核對顺序:從自己能做主的開始
- 先看服務器與 URL 形態,能 301 的统一掉;
- 再看站内連結與 sitemap,是否還在主動暴露重复 URL;
- 然後處理參數收敛與分頁規則;
- 最後才是 canonical 與 meta 指令,用来补足前面没覆盖到的情况;
- 處理完成後,用日誌或抓取工具观察這些 URL 的回訪情况,而不只是盯收錄數字。
合並還是保留,先問两個問题
第一個問题:這個 URL 有没有獨立被搜到的可能?如果它承载的只是同一條信息的不同排列组合,答案多半是否。第二個問题:保留它是否會分走核心頁面的信号與抓取预算?如果一個栏目下有上千個篩選组合,即使每個單獨看都還過得去,整体也會稀释主頁面。
几個容易弄反的地方
- canonical 指向的頁面本身被 noindex,等于两邊都不收錄;
- 用 canonical 去處理内容完全不同的頁面,属于誤用,通常會被忽略;
- 把篩選頁全站 noindex 之後忘了清理内鏈,抓取依舊在浪費;
- 只改了 URL 形態,没有同步修正站内連結,重复會重新長出来。
重复内容處理不是一次性的動作,而是收錄维護里的長期环节。每次上线新栏目、新篩選、新分頁,都值得回头看一眼:這次又新增了多少個指向同一份内容的 URL。
收尾时可以做一個小检查:随机挑几個被收錄的頁面,看它的 canonical 指向谁、正文主体是什么、内鏈里還有没有別的形態指向它。三件事對得上,重复問题基本就控制住了;對不上,就按上面的顺序往回退一步。