网站收录

页面改过之后,索引里的旧版本为什么还在:抓取刷新与索引更新

内容改了、搜索结果里还是旧版本,通常不是没收录,而是抓取刷新和索引更新还没跟上。本文把这两个环节拆开,讲清影响刷新速度的变量、可做的动作,以及几种常见的误判情况。

网站收录

页面改过之后,索引里的旧版本为什么还在:抓取刷新与索引更新

把页面标题或正文改掉,过几天在搜索结果里看到的还是旧版本,这种情况很常见。它通常不是“没收录”,而是抓取刷新和索引更新还没跟上。把这两个环节分开看,排查思路会清晰很多。

抓取刷新和索引更新,是两件事

蜘蛛重新访问页面、拿到新版本,这是抓取刷新;搜索引擎决定用新版本替换掉索引里的旧版本,并更新摘要、标题等展示信息,这是索引更新。前者发生不代表后者立刻发生,中间可能隔着几天甚至更久。

所以当你看到旧内容还挂在那里,第一件要确认的是:蜘蛛到底有没有在新版本上线之后再来过。如果日志里根本没有新的访问记录,那问题在抓取侧;如果来了、拿到的也是新版本,但展示没变,那才轮到索引侧。这两条路的处理动作完全不同。

影响刷新速度的几个变量

  • 更新幅度:整段重写、标题大改,和只调整一个标点,被判定为“内容已变”的概率不一样。小幅改动往往更容易被延后处理。
  • 可发现性:页面有没有稳定的内链入口、有没有出现在 sitemap 里、有没有被别处引用。入口越清晰,重新访问越容易排上队。
  • 站点整体抓取节奏:站点抓取频繁时,单个页面的刷新也会快一些;反之,一个低频站点上的内页,等上一两周并不稀奇。
  • 页面自身分量:被内链和外链指向较多的页面,通常比孤立的深层页面更快被重新访问。
  • 服务端响应:如果蜘蛛来时遇到超时、5xx 或者被 CDN 缓存拦下旧版本,刷新就会反复失败,表现和“没抓”很像。

改完之后可以做的动作

下面这些做法能做的是提高被重新抓取的概率,不构成任何时效承诺,也不保证索引一定会按预期刷新。

  1. 先自查新版本是否真的对外可见:清掉 CDN 或页面缓存,用未登录状态、换 IP 访问一次,确认返回的是新内容,而不是被缓存的旧副本。
  2. 检查响应状态码和 robots 相关设置:确认页面没有被临时屏蔽、没有误加 noindex、没有返回 404 或 5xx。
  3. 合理更新 sitemap 的 lastmod:只有当内容确实发生变化时才更新这个时间值。为了催抓取而反复改动 lastmod,会让这个信号逐渐失去可信度。
  4. 用内链把新版本“推”到入口附近:从首页或栏目页给出指向该页的链接,比干等更有效。链接锚文本最好和新内容主题一致。
  5. 提交前先稳定下来:短时间内反复微调同一页,容易让蜘蛛每次拿到的都是不同版本,反而拖慢判定。

几种容易误判的情况

  • 以为改了内容就等于触发了重抓:内容变化只是信号之一,不是开关。没有新的访问日志,就说明蜘蛛还没来。
  • 反复提交同一个 URL:提交动作本身不会让抓取无限加速,站点抓取容量有限,堆积的提交反而会稀释单个页面的优先级。
  • 把展示摘要没变当成索引没更新:有时索引已经换成新版本,但摘要仍是系统从正文里抽取的旧片段组合,看起来像没变。
  • 在不同搜索引擎之间横向比较:各自的抓取节奏和刷新周期不同,同一时间点看到的结果不一致是正常的,不必据此判断自己改“失败”了。
判断要不要继续等,看两个事实:日志里有没有新版本的抓取记录,以及抓到的内容是不是新的。有记录且是新内容,剩下的多半是时间问题;没记录或抓到的是旧内容,才需要回到抓取侧排查。

什么时候值得认真排查

如果更新已经过去很久,站内其他页面都已经刷新,唯独这一个毫无动静,就有必要查一查:页面是否被某条规则误伤、是否被 301 链条绕远了、内链入口是不是在改版中被去掉了。这类结构性原因不会靠等待自行消失。

反过来,如果是全站普遍刷新慢,那多半和站点整体的抓取状况有关,盯着单个页面折腾意义不大。先看站点层面的抓取频率、错误率和入口结构,再回到具体页面,顺序会更合理。