处理重复或冲突信号时,优先级不是按“哪个看起来更严重”,而是按“哪个会让百度无法确定该收录哪个网址”。最先处理的是同一内容对应多个可访问网址、页面同时给出互相矛盾的收录指令、以及站点地图与站内链接指向不一致这三类。它们都会让抓取和索引选择产生歧义,工作量不大,但影响直接。
要查什么:同一篇文章、同一商品页是否能通过带 www 和不带 www、带参数和不带参数、带结尾斜杠和不带结尾斜杠等多个地址打开。
怎么查:取几个有代表性的页面,把网址分别改动一处后在浏览器中访问,看是否都返回正常内容;再用 site: 查询观察百度已收录的是哪个版本。也可以用抓取工具批量检查返回状态码和最终跳转地址。
结果说明什么:如果多个版本都能正常打开且内容相同,说明存在重复入口。此时应确定一个主网址,其余版本用 301 永久跳转到主网址;站内链接、站点地图和分享链接统一使用主网址。如果只有主网址可访问,其余版本已跳转,则这一类信号基本干净,可以把时间留给下一项。
要查什么:同一个页面是否同时出现 robots 元标签、canonical 标签和 robots.txt 三套限制,而且指向不同结果。
怎么查:查看页面源代码中的 <meta name="robots"> 和 <link rel="canonical">,再打开站点根目录的 robots.txt 对照。重点看三类冲突:页面写 noindex 但 canonical 指向自己;canonical 指向 A 网址而站内链接大量指向 B 网址;robots.txt 禁止抓取某个目录,但站点地图又提交了该目录下的网址。
结果说明什么:robots.txt 的抓取限制不等于可靠的索引移除,它只阻止抓取,已收录的网址仍可能留在结果中。canonical 是提示而非强制指令,与其他信号冲突时百度可能自行选择。发现冲突后,先统一 canonical 指向的版本,再决定是否需要 noindex;如果只是不想让某类页面参与收录,优先用 noindex 而不是只靠 robots.txt。
要查什么:站点地图里列出的网址,是否和导航、列表页、正文内链实际指向的网址一致。
怎么查:从站点地图中抽取一批网址,与页面上的实际链接逐一比对,看是否存在 http 与 https 混用、参数版本混用、跳转链过长等情况。同时检查站点地图中的网址是否都返回 200 状态码。
结果说明什么:站点地图不保证收录,它只是提交候选网址。如果站点地图指向 A 版本,而站内链接都指向 B 版本,百度收到的就是两套信号,容易只选其一或都延迟处理。统一后,站点地图和站内链接应指向同一个可访问版本,且该版本不需要经过多次跳转。
时间和人手有限时,不要从全站第一条网址开始改。按下面的顺序安排:
判断依据是链接数量和页面重要性,不是页面新旧。一个被几十个内链指向的旧页面,优先级高于一个无人链接的新页面。假设某站点有 500 个商品页,其中 30 个被列表页和推荐位反复链接,那么先修这 30 个的网址统一和 canonical 指向,比平均修改全部页面更快见效。
每次修改后做三项检查:用浏览器访问旧网址,确认返回 301 且落到主网址;查看主网址源代码,确认 canonical 指向自身且没有 noindex;重新抓取或提交更新后的站点地图。之后观察百度抓取和收录变化,但不要期待固定时间,索引更新取决于抓取安排和页面本身情况。HTTPS 只解决传输加密,不代表页面没有重复或冲突信号,不能替代上述检查。
下一步,从站点中选出被链接最多的 20 个页面,按“多网址—指令冲突—站点地图不一致”的顺序逐项排查并记录修改结果,再决定是否扩大到全站。