索引為什么要做去重
搜尋引擎的索引空間和抓取资源都是有限的。当多個 URL 承载几乎相同的内容时,系統通常只需要保留一個“代表頁面”,其余地址要么被归並到代表頁,要么長期停留在已發現但未索引的狀態。這個過程更接近一種资源分配的選擇,而不是针對某個站点的惩罚。理解這一点,才能判断自己站点的重复問题到底要不要處理。
重复内容常见的四種形態
1. 整頁複製或采集
最直接的一種:正文、标题、排版几乎一字不差。如果内容是從別處搬来的,通常不會有好的结果;即使是自家站群里互相複製,也可能让搜尋引擎只挑其中一條留下。
2. 同一内容的多個 URL
同一個頁面可以通過多個地址訪問:带不带 www、字母大小寫、末尾有没有斜杠、有没有預設文档(/index.html 與 /)、參數顺序不同、加了跟踪參數。這些變体在索引里可能被合並,也可能各自留下一條,取决于規范化信号是否清晰。
- HTML 中的 canonical 是否唯一且自洽
- 内部連結是否统一使用同一個版本
- 是否做過 301 收敛
3. 模板與列表带来的局部重复
導航、侧栏、頁脚、免责声明在每個頁面都一样,本身不构成問题。但如果正文部分非常短,模板文字在頁面里占了大头,頁面的獨立信息量就會很低,進入索引的優先級也随之下降。
4. 跨站轉载與授權轉载
同一篇文章出現在多個域名下时,先被發現、先被索引的一方更容易成為代表版本。轉载方如果希望自己的版本被收錄,需要让轉载頁面带上指向原文的規范标簽,或者對轉载内容做實质性的补充與本地化改寫。
先判断要不要處理
不是所有重复都值得動手。可以用下面几步做一次粗略评估:
- 用站内搜尋或 site 查询抽样,看同類内容在索引里留下了几條。
- 翻服務器日誌,看這些重复 URL 是否在持續消耗抓取量。
- 看這些頁面有没有带来訪問、站内跳轉或轉化價值。
如果重复地址几乎不被抓取,也不带来任何價值,優先級可以往後放;如果它們明顯占用了抓取配額,或让该收錄的頁面迟迟進不了索引,就值得處理。
确定主版本,再让信号统一指向它
處理重复的核心是明确每一份内容對應哪一個 URL,然後让所有信号都指向它:
- 站内連結统一使用主版本地址,包括導航、面包屑、Sitemap。
- canonical 寫在重复頁面上並指向主版本,注意不要互相指向形成环。
- 301 用于确定不再需要的地址;如果两個地址都要保留(例如不同投放渠道),再考虑 canonical。
- 參數地址能通過 robots.txt 或 noindex 挡住的,先想清楚它是否真的不需要出現在搜尋结果里。
收敛動作做完之後,索引不會立刻同步。代表頁面和變体頁面之間的合並需要時間,期間看到的结果可能是混合的,不必每天改一次策略。
几個容易踩的誤区
- 给所有重复頁面都加 canonical,却让它們互相指向,信号等于互相抵消。
- 對想保留的頁面用 noindex,同时又期待它被收錄,這两件事是矛盾的。
- 只在 Sitemap 里提交主版本,站内連結却仍然指向舊地址。
- 把重复内容当成站点的头号問题,忽略了内容本身是否有獨立價值。
小结
重复内容的處理,本质上是在帮搜尋引擎做選擇:告诉它哪一條地址是主版本,其余地址不需要單獨占用索引位置。先判断影响范围,再统一連結與規范化信号,最後给它一些時間生效,通常比反复調整策略更有效。