识别配置冲突的核心方法,是把“抓取—解析—索引”三个环节的配置逐项列出,看同一目标是否被两条规则给出相反指令。常见冲突包括:robots.txt 禁止抓取但页面又被提交收录、canonical 指向 A 而站点地图只列 B、页面返回 noindex 却仍被内链大量指向。判断标准不是哪条规则“更强”,而是搜索引擎实际执行时哪条先被读到、哪条被忽略。
把影响收录的配置归为四组,冲突基本发生在组与组之间:
noindex、登录墙或 IP 限制。冲突的典型形态是“一组放行、另一组拦截”。例如 robots.txt 允许抓取,但页面 meta 写了 noindex;或站点地图提交了 A 地址,而 A 的 canonical 指向 B。此时收录失败的原因往往不是单一配置写错,而是两组指令指向了不同结果。
时间和人手有限时,先做这张表,再决定改哪一条。对每个待收录 URL 填四列:
curl -I 看响应头,再查 HTML 里的 meta)。判断结果:若四列指向同一个 URL 且都允许抓取与索引,配置层面没有冲突,收录失败更可能来自内容质量或抓取预算,应转向其他方向。若出现两个不同 URL,或“允许抓取 + 禁止索引”并存,就定位到了冲突点,优先修这一处。
robots.txt 的 Disallow 只阻止抓取,不阻止已收录页面留在索引里;而 noindex 需要页面被抓取后才能读到。两者叠加时,搜索引擎可能既抓不到页面、也读不到 noindex,结果是旧索引长期保留。识别方法:确认该 URL 是否曾被收录,若曾被收录且现在同时存在 Disallow 和 noindex,这属于冲突组合,需要先放开抓取、让 noindex 生效,再观察移除。
站点地图是发现入口,canonical 是合并信号,两者不一致会让同一内容被当成两个地址处理。识别方法:把站点地图里该页的 URL 和页面 canonical 逐字对比,注意协议、www、结尾斜杠、大小写、参数顺序。只要有一处不同,就记为冲突。适用条件:仅当两个 URL 内容确实相同时才应统一;若内容不同,先决定保留哪个,再统一其余配置。
页面 301 到新地址,但站内链接仍指向旧地址,会形成“发现的是旧地址、最终落到新地址”的链路。识别方法:抓取该页的入链,看链接目标是否为重定向起点。若大量内链指向旧地址,抓取预算会消耗在跳转上。处理条件是:把内链直接改为最终地址,保留必要的 301 用于外部旧链接。
人手有限时不要按发现顺序修,按影响面排序:
验收方式:改完后用官方工具重新测试该 URL 的抓取与索引状态,并在站点地图中确认地址一致。不要以“提交了站点地图”作为收录保证,站点地图只帮助发现,不承诺收录;robots.txt 的限制也不等于可靠的索引移除。
下一步:挑一个当前未收录的 URL,按上面的四列对照表填一遍,先确认是否存在两组配置指向不同结果,再决定改哪一条。