结论先说:入口页面能收录,只能证明抓取和索引链路在“起点”是通的,不能证明深层链路也通。要定位断点,应把从入口到深层页的每一步拆开核对,而不是只看入口是否被收录。一个常见的反例是:入口页收录正常,但深层页全部依赖入口页上的某个跳转组件;如果该组件用 JavaScript 渲染、且渲染结果未被抓取,那么断点就在“渲染后链接”这一步,而不在 robots.txt 或服务器响应。下一步动作是先固定一条可复现的入口到深层路径,再逐段验证。
入口页被收录,至少说明抓取工具能访问该 URL、拿到了可索引内容,并把它放进了索引。但它没有说明三件事:入口页上的链接是否被识别、链接指向的深层 URL 是否可访问、深层内容是否被判定为可索引。把这三件事混在一起,就会得出“入口正常所以整站正常”的错误结论。
可核对的证据是:用抓取工具或服务器日志确认入口页最近一次被抓取的时间,再检查该次抓取返回的状态码和内容长度。如果入口页返回 200,但返回内容里不含任何指向深层页的 <a href>,那入口收录正常与深层失效并不矛盾——深层页根本没有从这条路径被发现。
从入口到深层,通常经过四段:入口页被抓取、入口页上的链接被解析、深层 URL 被请求、深层内容被索引。每段的失败表现不同,可以据此区分原因。
实际动作:先取入口页的原始 HTML(不是浏览器渲染后的 DOM),搜索深层 URL 是否以链接形式出现。如果不出现,先解决链接可发现性;如果出现,再查日志确认该深层 URL 是否被请求。这个动作的结果直接决定下一步是修渲染还是修内容。
假设入口页用一段脚本在点击后跳转到深层页,而不是在 HTML 里直接写 <a href>。这种情况下,入口页收录正常,但深层页从未被请求。原因是抓取工具不会主动“点击”页面上的按钮。此时 robots.txt 里没有禁止、服务器也正常,问题却真实存在。
区分方法:查看入口页原始 HTML 中是否存在深层 URL 的字符串。若只出现在脚本的跳转逻辑里,而没有对应的链接元素,就属于可发现性断点。反例是:如果抓取工具确实执行了脚本并拿到了渲染后的链接,那么该深层 URL 会被请求,此时断点不在这里,应转向检查深层页自身的可索引性。
定位断点时,有几个信号容易被过度解读。robots.txt 的抓取限制只影响抓取,不等于可靠的索引移除;深层页未被收录,不能仅凭 robots.txt 未禁止就断定链路没问题。站点地图列出深层 URL 也不保证收录,它只是发现渠道之一,不能替代入口页上的可抓取链接。HTTPS 只说明传输层配置,不保证深层页内容可索引,也不保证排名。
更稳妥的做法是分别核查:robots.txt 是否允许抓取该深层路径、站点地图是否包含该 URL、该 URL 是否返回 200 且内容与入口页不重复。这些条件同时满足时,断点更可能在抓取预算或索引选择,而不是链路本身。
选一条具体的入口到深层路径,记录四段各自的证据:入口页抓取时间与状态码、原始 HTML 中是否存在深层链接、日志中是否有深层 URL 请求、索引状态查询结果。把这四项按时间顺序排列,断点会落在第一项为“否”的位置。
如果第二项为“否”,动作是让深层链接出现在原始 HTML 中,然后重新提交入口页并观察日志是否出现深层请求。如果第三项为“否”但第二项为“是”,动作是检查该链接是否被 nofollow、是否位于需要交互才展开的区域,再复查。如果第四项为“否”而前三项均为“是”,动作转向深层页内容与重复度核查,而不是继续改链接。每一步的结果都决定下一步查什么,避免在无关环节反复调整。