在 Search Console 的页面索引报告里,「已发现 — 尚未编入索引」这一条经常出现在新站或者更新比较频繁的站点上。它容易被读成“被惩罚了”或者“内容不行”,但这个状态首先描述的是一个流程位置:搜索引擎已经知道这个 URL 存在,只是还没把它安排进抓取队列,真正的抓取动作还没有发生。
把它当成一个“待办”而不是一个“结论”,排查方向会清楚很多。
已发现和已抓取,卡住的是不同环节
这两个状态经常被混在一起看,其实中间隔着一步。
- 已发现,尚未编入索引:URL 通过内链、sitemap 或其他方式被记录进发现队列,但还没轮到抓取。
- 已抓取,尚未编入索引:内容已经取回来了,评估之后暂时没有放进索引,问题更偏向内容本身或重复判断。
- 重复网页,Google 选择了不同的规范网址:其实已经收录,只是收的是另一个版本。
所以看报表时,别只盯着“已发现”这一个数字。把它和“已抓取”“重复网页”放在一起看,才知道队列前端堵着,还是后端筛掉了。
URL 为什么会被排到后面
常见的原因大多不神秘,可以归成几类:
- 站点整体规模大,抓取速度有限,新地址自然要排队。
- 这个 URL 在站内位置很深,内链入口少,权重和优先级都低。
- sitemap 里混进了大量筛选页、参数页、低价值地址,稀释了对重要页面的注意力。
- 服务器响应慢、超时多,抓取被迫降速。
- 页面发布时内容还不完整,或者与其他页面高度相似。
一份可以照着走的排查顺序
- 先确认这个 URL 有没有被真正引用:站内是否有指向它的链接,sitemap 里写的是不是最终地址而不是跳转前的地址。
- 用 URL 检查工具做一次实时抓取,看返回状态码和实际抓到的 HTML。如果正文是空的,问题在渲染而不是在排队。
- 翻服务器日志,看搜索引擎的抓取工具是否来过、频率如何、都抓了哪些地址。日志能回答很多报表答不了的问题。
- 确认 robots.txt 没有意外挡住这个路径,顺便检查页面上是否有互相矛盾的指令,比如同时存在 noindex 和 canonical 指向别处。
- 看整站的抓取统计。如果全站抓取量都很低,那多半不是这一页的问题,而是整体抓取效率的问题。
- 最后再回到内容本身:这个页面相比站内其他页面,提供了什么独有的信息。如果答案是“几乎没有”,那它停在哪个状态都不奇怪。
可以顺手做的几件小事
- 把重要的新页面挂到首页或栏目页的内链里,别只靠 sitemap。
- 发布时尽量一次把正文补齐,避免“先上线再补内容”的节奏。
- sitemap 只保留希望被抓取的地址,数量少一点、准一点,通常比堆满更有用。
- 减少无意义地址的产生,比如带各种追踪参数的链接、可以合并且不产生新内容的筛选组合。
提交 sitemap 的意思是“这里存在一个地址”,不是“请立刻收录这一页”。它负责发现,不负责收录。
多久算正常,什么时候该换思路
从几天到几周都有可能,没有一个能套用到所有站点的时限。新页面正好撞上站点抓取高峰,等的时间就会长一些。这段时间里频繁改动标题、反复重发 sitemap、每天提交一次 URL,通常不会让事情变快,反而会让信号显得混乱。
真正需要换思路的情况是:页面长期停在“已发现”,同时整站抓取量低、日志里抓取次数稀少、索引里的页面总数也不多。这时候要处理的是站点的抓取结构和内容质量,而不是盯着这一条记录反复提交。
反过来说,如果站点整体抓取正常,只有个别页面停在这个状态,那多半只是排队顺序问题,把内链和内容补齐,等它轮到就好。