处理 URL 提交工具产生的重复或冲突信号,核心原则是:先判断冲突来自“同一 URL 被多次提交”还是“多个 URL 指向同一内容”,再决定是合并信号还是保留多个入口。前者通常只需保留一个首选提交路径,后者则需要用 canonical、重定向或 robots 规则做取舍。不要同时向多个入口重复推送同一批 URL,否则日志和报表会互相干扰,难以判断哪条信号真正生效。
重复提交指同一个 URL 在短时间内被多次送入提交工具,例如站点地图、手动提交、接口推送同时覆盖同一批地址。内容重复指多个 URL 返回相同或高度相似的内容,例如带参数版本、带 www 与不带 www、大小写变体、分页与排序参数。两类问题的处理方向不同:前者做减法,后者做规范化。
当多个 URL 的内容几乎一致,且业务上不需要分别统计流量时,优先合并。做法是选定一个规范 URL,其余地址用 301 重定向指向它;如果无法重定向,则在页面 <link rel="canonical"> 中声明规范地址。之后只向提交工具提交规范 URL,站点地图中也只保留规范地址。
验收信号:用 site: 或抓取工具检查时,非规范 URL 不再作为独立入口出现;服务器日志中非规范 URL 的抓取请求逐步减少;规范 URL 的抓取频次保持稳定。若发现非规范 URL 仍被频繁抓取,说明重定向或 canonical 尚未被识别,需要检查响应头与页面头部是否一致。
当多个 URL 面向不同语言、不同地区或不同业务线,且内容需要独立维护时,不应强行合并。此时要做的不是消除 URL,而是消除“冲突信号”:确保每个 URL 的 canonical 指向自身,互不交叉;站点地图按语言或地区分组;提交工具中按分组分别推送,不要在同一批次里混入互相指向的地址。
判断依据:如果两个 URL 的标题、正文、主要转化目标都不同,保留;如果只是参数、大小写或协议不同,合并。对于参数版本,优先用 canonical 指向无参数版本,而不是依赖 robots.txt 屏蔽抓取,因为 robots.txt 的抓取限制不等于可靠的索引移除。
检查项:curl -I 查看状态码是否为 301 或 200;查看页面源代码中 canonical 是否指向自身或目标地址;对比站点地图中的 URL 与提交工具中的 URL 是否一致。若状态码为 302,应改为 301,避免临时跳转被当作可替换信号。
如果提交后仍看到重复信号,按以下顺序排查:先确认 canonical 与重定向是否同时存在且指向一致;再确认站点地图是否仍包含旧地址;然后检查提交工具是否保留了历史任务;最后检查是否有外部链接或旧页面仍在引用非规范 URL。注意,站点地图不保证收录,提交工具也不保证立即处理,因此验收应以抓取日志和索引状态为准,而不是以提交成功提示为准。
下一步:从提交工具中导出最近一批 URL,按上述分组方法标记重复项,先处理其中一组,观察抓取日志变化后再推广到其余分组。