很多人盯收录,只看一个数字:收录量涨了还是跌了。但收录并不是一个开关,从蜘蛛第一次知道这个 URL,到它能被用户搜出来,中间要经过几个环节。每个环节卡住的表现都不一样,笼统地说“没收录”,很容易修错地方。
阶段一:URL 被发现
这是最前面的一步。蜘蛛得先知道这个地址存在,才可能去访问它。常见的发现途径有几条:
- 站内链接,尤其是从已经被频繁抓取的页面点出去的链接;
- 站点地图,适合数量大、内链入口少的页面;
- 主动提交,能缩短发现时间;
- 外部链接带来的自然发现。
这一步容易被忽略,也容易造成假象。有的页面在工具里显示“已发现”,但可能几天都没被抓,因为待抓队列里排着的 URL 太多。发现只是排队,不代表会马上处理。
阶段二:被抓取
蜘蛛来了,能不能顺利把内容拿走,是第二个环节。这里常见的卡点包括:
- 服务器响应慢或者经常返回 5xx,蜘蛛会主动降低访问频次;
- robots.txt 误屏蔽,或者防火墙把蜘蛛拦在外面;
- 页面主要靠 JS 渲染,抓取时拿到的只是一个空壳;
- 重定向链太长,跳几次之后放弃。
抓取成功,只说明蜘蛛拿到了东西,不代表它认可这个页面。很多人看到日志里有访问记录,就认为收录没问题,这其实是把抓取和收录混为一谈了。
阶段三:进入索引
这才是通常意义上的“被收录”。搜索引擎要判断:这个页面值不值得留下来,和站内其他页面、站外页面比是不是重复,规范地址应该是哪一个。常见的分流情况有:
- 内容和其他页面高度相似,被归并到另一个 URL;
- canonical 指向了别的地址,收录记在别人头上;
- 页面有效内容太少,被判定为价值不足,暂不索引;
- 参数、会话 ID 造成的多个副本,被合并成一个。
被索引的是“一个地址所代表的内容”,而不是你提交过几次。同样的内容,搜索引擎通常只保留一个它认为最合适的版本。
阶段四:能被搜出来
被索引了,也不等于一定能在某个搜索词下出现。索引和展现之间还隔着相关性、地域、设备、时效等因素。一个刚收录的长尾页面没有展现,是很正常的事,不代表收录失败。
也可能是另一种情况:页面确实在索引里,但它对应的查询词本身就很冷门,几乎没人搜,自然也就看不到。
怎么判断卡在哪一步
与其反复问“收录了吗”,不如按顺序排查:
- 发现了吗:这个 URL 有没有任何入口?站点地图里有没有、内链有没有指向它?
- 抓了吗:日志或抓取工具里有没有对它的访问记录,返回的是 200 还是别的状态码?
- 内容取到了吗:抓取到的版本和用户实际看到的版本是否一致?
- 进了索引吗:用站点查询或站长工具确认,注意查的是规范地址。
- 有展现吗:如果确认在索引里却搜不到,那多半是相关性和需求的问题,不是收录问题。
每一步的修法都不同:入口缺失就补内链,抓取失败就看服务器和屏蔽规则,内容重复就理清规范地址,没有展现就回头看看页面有没有真正解决用户的问题。
几个常见的误判
- 把“没排名”当成“没收录”,于是反复提交、反复改标题,越折腾越乱。
- 把“蜘蛛访问过”当成“已经收录”,忽略了后面的质量判断环节。
- 用某个精确查询词搜不到,就断定页面没进索引,而这个词本身可能就不在页面的语义范围内。
- 看到收录量下降就紧张。索引本身有正常的新陈代谢,淘汰一批低价值页面未必是坏事。
把收录拆成“发现—抓取—索引—展现”四步之后,多数问题都能落到具体某一环上。分阶段排查,比盯着一个总数猜原因要可靠得多。