百度不收录时,重复或冲突信号通常指同一内容有多个可访问地址、页面同时给出互相矛盾的抓取或索引指令、或者站内多个页面主题高度相似。处理顺序不是先改模板,而是先确认百度实际抓取到的是哪个版本,再决定保留哪个信号、屏蔽哪个信号。
重复信号常见于:同一篇文章能通过带参数、带 www 与不带 www、http 与 https、移动版与桌面版等多个地址打开。冲突信号常见于:robots.txt 禁止抓取,但页面又希望被收录;页面写了 noindex,但站内链接和站点地图仍在大量提交;canonical 指向 A 页面,而内链和站点地图主要指向 B 页面。
这两类问题的处理方式不同。重复信号要选出唯一主版本,让其他版本明确指向它;冲突信号要先判断哪条指令是真正想生效的,然后让抓取、索引、内链、站点地图保持一致。
很多人发现重复页面被收录后,第一反应是在 robots.txt 里禁止抓取该目录。这个做法有风险。robots.txt 限制的是抓取,不是可靠的索引移除。如果百度之前已经抓取并建立了索引,之后禁止抓取,百度可能仍保留旧索引,却无法读取页面上的 noindex 或 canonical,反而让重复状态更难消除。
正确判断是:如果页面还需要被读取以传递“不要收录”的信号,就不要用 robots.txt 阻断抓取;如果页面完全不需要被抓取,且已经确认不需要通过它传递任何索引指令,才考虑限制抓取。想移除已收录页面,应优先让页面返回 404 或 410,或使用页面级 noindex,并保持可抓取。
先列出同一内容的所有可访问地址,再按以下条件选择主版本:
选定后,其他版本应通过 301 跳转到主版本。如果无法做 301,至少在主版本上设置自指 canonical,并在重复版本上设置指向主版本的 canonical。canonical 是建议信号,不是强制指令,所以还要同步修改内链和站点地图,避免继续把重复地址当作主要入口提交。
检查项:用百度搜索资源平台提供的抓取诊断或普通抓取工具,分别请求主版本和重复版本,确认返回状态码、canonical 和页面内容是否一致。如果重复版本返回 200 且 canonical 指向自己,说明信号仍然冲突。
冲突信号的核心是“说一套、做一套”。可以按下面顺序核查:
robots.txt 是否误封了该页面或所在目录。noindex,以及它是否被错误地加在所有页面上。假设一个例子:某页面移动版地址是 m.example.com/page,桌面版是 www.example.com/page。如果移动版写了 canonical 指向桌面版,但站点地图只提交移动版,内链也主要指向移动版,百度收到的信号就是矛盾的。此时应决定主版本,然后让 canonical、站点地图和内链都指向同一个地址。这个例子只说明判断方法,不代表任何真实站点结果。
调整后不要立刻反复修改。先确认百度能正常抓取主版本,再观察该地址是否进入索引。判断依据不是“提交了站点地图”,而是百度是否抓取成功、是否选择主版本作为收录对象。站点地图不保证收录,HTTPS 也不保证排名或安全无漏洞,它们只是辅助信号。
如果一段时间后重复地址仍被收录,检查是否还有未处理的内链、外链或站点地图入口在指向它。如果主版本迟迟不收录,检查页面本身是否有足够独立内容,以及是否存在模板化、空白或与站内其他页面高度相似的问题。
下一步:选一个你怀疑存在重复或冲突信号的页面,分别记录它的可抓取状态、索引指令、canonical、站点地图提交地址和内链指向,找出其中不一致的一项,先改这一项并保持其他信号不变。