先用百度收录查询工具确认“入口正常、深层失效”是不是真的存在:把入口页和至少两级深层页分别查询,记录返回结果与查询时间。若入口有结果而深层没有,不能立刻判定被惩罚,更常见的原因是抓取路径、渲染结果或链接层级在某一段断开。接下来要做的是把断点缩小到“抓取—解析—索引”中的一段,而不是反复提交入口页。
这两种情况的处理方向完全不同,判断依据也不同。
区分的动作很具体:从入口页出发,逐级点击到目标深层页,观察每一跳是否返回 200、是否被重定向、是否落到登录页或空壳页。任何一跳出现 302 跳转到无关地址,断点就落在那里,后续的收录查询结果都只是症状。
入口正常往往掩盖了中间层的问题。假设一个栏目页 A 正常收录,列表页 B 正常收录,但详情页 C 全部无结果。此时不要直接查 C,而要先确认 B 到 C 的链接是否真实存在于渲染后的 HTML 中。
<a href> 中,而不是只存在于 JavaScript 变量或点击事件里。完成这一步后,如果发现 B 到 C 的链接在渲染后为空,那么下一步不是提交 C,而是修复 B 的链接输出方式;反之若链接完好,才继续查 C 自身的可访问性。
这三个常被当成“收录开关”,但它们的证明力有限,需要分开看。
robots.txt 只能说明是否允许抓取,不能证明页面已被移除或未被索引。一个 URL 被 robots 禁止抓取,仍可能因外部链接出现在结果中;反过来,允许抓取也不等于会被收录。若怀疑误封,直接请求 /robots.txt 核对规则命中的目录,再对照深层页的实际路径。
站点地图 是提交线索,不是收录保证。站点地图里存在某 URL,只能说明你声明了它,不能说明百度已抓取或已索引。把站点地图当作排查起点可以,当作结论不行。
状态码 方面,200 只代表服务器返回正常,不代表渲染后有正文。若深层页返回 200 但正文由脚本异步加载,抓取到的可能是空壳。此时应对比“原始 HTML 正文长度”和“渲染后正文长度”,两者差异过大说明断点在渲染。
假设某站点首页与栏目页在百度收录查询工具中均有结果,详情页连续多日无结果。按以下顺序排查:
若第 2 步发现链接为空,修复链接输出后重新观察抓取记录是否出现详情页请求;若第 4 步发现 canonical 指向列表页,则断点在配置层,需要修正后再判断收录变化。每一步的结果决定下一步查哪里,而不是同时改所有配置。
当深层页在抓取记录中已出现请求、状态码正常、渲染后正文非空、canonical 指向自身,但查询仍无结果时,继续反复查询不会带来新信息。此时合理的动作是保持页面稳定、补充站内入口链接、等待下一轮抓取周期,而不是频繁改动参数或反复提交。反之,只要上述任一条件不成立,就应先修复该条件,再谈收录。收录查询工具给出的是结果快照,定位断点靠的是路径与渲染证据。