很多人判断页面有没有被收录,只看索引报告里的数字。数字涨了就放心,跌了就慌。但报告本身是抽样和估算的结果,单看它很容易得出错误结论。把索引报告、站内查询、服务器日志三组数据放在一起看,才能大致还原页面被搜索系统处理到了哪一步。
三组数据分别在回答什么问题
索引报告:看趋势,不看绝对值
索引报告给出的“已编入索引”“已发现但未编入索引”等分类,是按样本估算的,不同时间点刷新结果可能略有出入。它的价值在于观察变化方向:某类模板的页面连续几周从“已编入索引”滑向“已发现”,说明这批 URL 的抓取或质量出了问题。把它当成体检趋势线,而不是精确台账。
站内查询:只能作为抽样参考
用 site 指令查某个目录或某个关键词,返回的条数经常和报告差很多。它受查询词、地域、时间点影响,结果并不稳定,也不代表全部索引。比较实用的用法是抽查具体页面:确认某个 URL 是否以你期望的标题和摘要出现,以及是否被别的地址替代。
服务器日志:看抓取事实,看不到索引结果
日志能明确告诉你某个 URL 在什么时间被哪个爬虫请求过、返回了什么状态码、抓了多少字节。但它只能证明“被抓过”,不能证明“进了索引”。反过来,日志里长期没有某个 URL 的记录,基本可以判断它还没有被纳入抓取范围,这时候再纠结索引状态意义不大。
数据对不上时的排查顺序
- 先确认页面可访问。用未登录、无缓存的请求测试,确认返回 200 且正文可见。如果返回 4xx、5xx 或跳到登录页,后面的判断都不成立。
- 再查 robots 与 noindex。确认没有被 robots.txt 挡住,也没有 meta robots 或响应头里的 noindex。这两项会让页面在索引报告里显示得模棱两可。
- 然后看 canonical 指向。如果页面把自己指向了另一个地址,索引里挂的可能是那个地址,站内查询自然搜不到本页。
- 接着核对日志。看目标 URL 近期有没有被抓取记录。没有记录就先解决入口问题:内链、站点地图、栏目路径是否可达。
- 最后对照索引报告。如果日志显示已抓取、robots 和 canonical 都正常,页面仍长期停在“已发现”状态,就要回到内容层面,检查正文是否过薄、是否与其他页面高度重复。
建立一份可复用的核查记录
- 按页面模板分组记录,而不是逐个 URL 记录,否则量一大就失去可操作性。
- 每次核查固定看同一批样本 URL,跨时间对比才有意义。
- 记录状态码、canonical 目标、最近抓取时间和当前索引状态四项,够用且不繁琐。
- 改版、换模板、调整内链之后主动复查一次,这类操作最容易让收录状态出现波动。
三组数据的作用是互相校验,不是互相替代。任何一组单独看,都可能让你做出错误的优化动作。
收录核查的难点不在于拿到数据,而在于知道每条数据能证明什么、不能证明什么。当报告、查询和日志给出不一致的信号时,先怀疑测量方式,再怀疑页面本身,通常能省下不少无效改动。