重复页面排查的核心不是先改代码,而是先确认“哪些URL被搜索引擎当成独立页面收录,并且内容高度相似”。做法是:从站点地图和站内链接导出URL清单,按标题、正文摘要、参数模式分组,再结合搜索引擎的收录结果判断重复类型,最后用canonical、301或内容差异化处理。判断是否有效的验收信号,是目标URL的收录状态和展示结果逐步收敛,而不是某一天排名突然变化。
很多排查之所以越改越乱,是因为把不同成因混在一起。可以按下面的顺序分类:
?sort=price、?utm_source=。这类通常保留一个规范版本,其余用canonical指向主版本,或在服务器层拦截无意义参数。第一步,导出候选URL。优先使用XML站点地图、站内搜索页、分类筛选页和数据库中的内容表。不要只依赖爬虫工具的一次抓取结果,因为分页和参数链接可能没有被完整发现。
第二步,做相似度分组。把每个URL的title、H1、正文前200字和主要段落做成表格,按完全相同的title分组,再按正文相似度人工抽查。判断标准可以设为:标题相同且正文主体重合超过大半,就列入重点核查;只有标题相近但正文差异明显的,先不急着合并。
第三步,对照搜索引擎的收录表现。用site:查询只能作为粗略参考,更可靠的是查看目标URL是否出现在搜索结果中、展示的标题和摘要是否来自该URL。若多个URL轮流出现在结果里,说明规范化信号不稳定;若只有主URL出现,说明处理方向基本正确。
确认重复类型后,按以下优先级执行:
验收信号包括:规范URL在搜索结果中的展示趋于稳定;重复URL逐渐从结果中消失或被替换;站内抓取不再大量命中参数URL。这里要注意,一次改动前后比较要考虑季节、搜索需求变化和数据采集差异,不能把短期波动直接归因于重复处理。
假设某站点有/course/seo和/course/seo?ref=home两个URL,标题和正文相同。先检查站内首页链接指向哪一个:如果指向带参数版本,先把链接改为无参数版本;再确认无参数版本可正常访问且返回200;然后在带参数版本上设置canonical指向无参数版本。若带参数版本已有外部链接或历史收录,可以改用301。过一段时间后,用site:加路径片段观察哪个URL被展示。若展示的仍是带参数版本,需要继续检查服务器是否对参数做了强制跳转、canonical是否被正确输出。
下一步,从你站点中选出标题完全相同的两组URL,按上面的三步做一次分组核查,先处理站内链接混用的问题,再决定用canonical还是301。