处理百度收录中的重复或冲突信号,核心是先判断冲突发生在哪一层:是同一内容有多个可访问地址,还是页面同时给出互相矛盾的收录指令。前者优先做规范化,后者优先做指令清理。两者不能混用:规范化解决“百度该收哪个地址”,指令清理解决“百度到底能不能收、该不该跟”。判断错层,改完往往没有效果。
地址型重复指同一篇内容能通过多个 URL 打开,例如带与不带尾斜杠、http 与 https、带参数与不带参数、移动版与桌面版各自独立可访问。此时百度面对的是“选哪个”的问题,信号冲突来自多个地址都像正主。
指令型冲突指页面自身或站点配置给出矛盾态度,例如页面 meta robots 写 noindex,而内链和站点地图仍在大量提交该地址;或者 robots.txt 禁止抓取某目录,同时又把该目录 URL 放进站点地图。此时百度面对的是“听谁的”的问题。
判断方法很直接:用浏览器无痕模式逐个打开疑似重复地址,看内容是否相同、是否都能返回正常状态码。如果内容相同且都能访问,属于地址型;如果同一地址的 HTML 里同时出现互相排斥的指令,属于指令型。两种问题可能同时存在,但处理顺序应是先指令、后地址,因为指令冲突会让后续规范化失去意义。
规范化的目标是让百度明确知道哪个地址是首选版本。可执行步骤:
rel="canonical",指向主地址;canonical 必须使用绝对 URL。适用条件:重复地址内容基本一致,且你希望保留其中一个版本被收录。代价是需要改动模板或跳转规则,参数型重复还要梳理哪些参数影响内容、哪些不影响。判断结果的方法:改完后用百度搜索资源平台的抓取诊断或普通抓取工具确认主地址返回 200、重复地址返回 301 或带正确 canonical;之后观察百度是否逐步只保留主地址。注意,站点地图提交不保证收录,它只是发现渠道,不能替代规范化本身。
指令清理的目标是消除“让抓”与“不让抓”、“让收”与“不让收”同时存在的状态。可执行步骤:
适用条件:冲突来自配置或模板遗留,而不是内容本身重复。代价是 noindex 与 robots.txt 禁止的生效方式不同:robots.txt 禁止抓取后,百度无法读取页面上的 noindex,因此“先禁止抓取再指望 noindex 生效”通常行不通。robots.txt 的抓取限制不等于可靠的索引移除,已收录地址即使被禁止抓取,也可能在一段时间内仍出现在结果中。判断结果的方法:清理后确认目标地址返回的响应头与页面 meta 态度一致,且不再被 robots.txt 误伤;再用抓取工具验证百度能正常读取该页面。
按下面顺序做决策,可以避免反复改:
选择依据可以概括为:冲突在“态度”上,用指令清理;冲突在“地址”上,用规范化。两者都涉及时,先清态度,再收地址。HTTPS 只是协议选择,不保证安全无漏洞,也不保证排名,不要把它当作解决重复信号的方案。
下一步:挑一个当前最可能被重复收录或指令矛盾的 URL,用抓取工具记录它的状态码、canonical、meta robots 和 robots.txt 结果,再对照上面的选择步骤决定先做哪一层。