博客改版后百度不收录?5个检查清单救你一命

上个月我的一个读者找我说,他博客改版一周了,百度还没重新收录,急得不行。我让他按我给的清单逐项检查,结果发现是robots.txt把新版路径给屏蔽了。

改完后第二天,百度开始重新收录。

博客改版是个技术活,稍微不注意就会踩SEO的坑。今天我整理了一份检查清单,帮你避开这些坑。

为什么改版后百度不收录?

先说说原因。博客改版后不收录,通常有几种情况:

情况1:旧链接变成了死链

改版前,你的文章链接可能是`/post/123.html`。改版后变成了`/article/123.html`。百度之前收录的都是旧链接,现在点进去全是404。

百度蜘蛛访问发现全是死链,会认为网站出了问题,暂时停止收录。

情况2:robots.txt屏蔽了新路径

这个就是我那个读者遇到的问题。他改版时新开了一个目录,但忘了在robots.txt里允许蜘蛛访问,结果新版页面一个都没被收录。

情况3:页面结构变了,蜘蛛不适应

改版前页面是传统的HTML结构,改版后变成了大量JavaScript渲染。百度蜘蛛对JS的解析能力有限,可能抓不到内容。

情况4:服务器响应时间变长

改版后网站变慢了,百度蜘蛛访问超时,自然就抓取失败。

情况5:改版期间关闭了网站

有人改版时直接把网站关了,显示「维护中」页面。这个页面返回的是200状态码,百度以为这就是你的网站内容,自然不会收录。

检查清单1:301重定向是否正确

这是最重要的检查项。

改版后,所有的旧链接必须301重定向到新链接。301告诉百度「这个页面永久搬家了,请更新你的索引」。

检查方法:

1. 在百度site你的域名,查看收录的旧链接

2. 手动访问这些旧链接,看是否跳转到新链接

3. 用工具批量检查状态码(推荐用Xenu Link Sleuth)

如果发现有旧链接没有跳转,立即补充301规则。

301规则的写法(Nginx):

```

rewrite ^/post/(.*)\.html$ /article/$1.html permanent;

```

检查清单2:robots.txt是否允许收录

很多人改版时会改目录结构,但忘了更新robots.txt。

检查方法:

1. 访问`你的域名/robots.txt`

2. 确认新版目录是否被Allow

3. 确认没有Disallow所有蜘蛛

正确的robots.txt示例:

```

User-agent: *

Allow: /

Disallow: /admin/

Disallow: /login/

Sitemap: https://你的域名/sitemap.xml

```

如果改版后新增了目录,比如`/blog/`,一定要在robots.txt里Allow这个目录。

检查清单3:页面是否能被正常抓取

这个检查针对使用了大量JavaScript的改版。

检查方法:

1. 用百度搜索资源平台的「抓取诊断」工具

2. 输入新版页面URL,看百度蜘蛛能抓到什么内容

3. 如果抓到的是空页面或乱码,说明JS渲染有问题

解决方案:

  • 对重要页面做服务端渲染(SSR)
  • 或者用预渲染技术生成静态HTML
  • 或者在``里添加``标签

检查清单4:服务器响应速度

改版后网站变慢是常见问题。

博客改版后百度不收录?5个检查清单救你一命-第1张图片-无双博客

检查方法:

1. 用Chrome开发者工具看TTFB(Time To First Byte)

2. 如果超过500ms,就需要优化

3. 用GTmetrix或PageSpeed Insights跑一遍

常见的改版后变慢原因:

  • 数据库查询未优化
  • 新主题太重,加载大量资源
  • PHP版本不兼容,处理变慢

解决方案我就不展开讲了,可以看我之前写的网站速度优化文章。

检查清单5:主动推送新链接

改版后,不要等百度自己来抓,要主动推送。

百度搜索资源平台提供了主动推送API。把你改版后的所有页面URL整理出来,批量推送给百度。

推送方法(PHP示例):

```php

$urls = array(

'https://你的域名/article/1.html',

'https://你的域名/article/2.html',

// ...更多URL

);

$api = 'http://data.zz.baidu.com/urls?site=你的域名&token=你的token';

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $api);

curl_setopt($ch, CURLOPT_POST, true);

curl_setopt($ch, CURLOPT_POSTFIELDS, implode("\n", $urls));

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$result = curl_exec($ch);

curl_close($ch);

echo $result;

```

推送后,百度会在24小时内处理。

改版时间表:什么时候做什么

最后给一个改版的时间表,帮你规划:

时间任务目的
改版前1周备份网站、整理旧链接出问题能回滚
改版当天配置301重定向保留旧链接权重
改版当天更新robots.txt允许蜘蛛抓新页面
改版当天主动推送新链接加速百度收录
改版后3天检查百度抓取情况发现问题及时处理
改版后1周检查收录恢复情况评估改版影响
改版后1月持续监控排名变化确保SEO不降权

我改版踩过的坑

分享几个我踩过的坑:

坑1:忘了301,权重一夜归零

我的博客第一次改版,完全忘了做301重定向。旧链接全变成404,百度收录量从800降到0。后来花了一个月才慢慢恢复。

坑2:改版时关站,首页被K

有个朋友改版时把网站关了3天,首页直接被百度K掉。原因是他返回了200状态码的维护页面,百度以为网站变成了单页面网站。

正确的做法是返回503状态码,告诉百度「网站临时维护,请稍后再来」。

坑3:新主题SEO不友好

换了个好看的主题,结果发现主题没设置好TDK,所有页面的标题都一样。改版后一周,排名全掉了。

后来我学乖了,换主题前一定先用测试环境检查SEO设置。

常见问题

Q:改版后多久能恢复收录?

A:正常情况下1-2周开始恢复,完全恢复需要1-3个月。

Q:改版会掉排名吗?

A:如果301做得好,301重定向可以传递大部分权重,排名基本不会掉。但如果不做301,排名肯定会掉。

Q:改版要不要通知百度?

A:百度没有专门的改版通知入口,但可以通过主动推送新链接来加速收录。

Q:改版后site数量变少了正常吗?

A:正常。旧链接被删除,新链接还没收录,site数量会暂时下降。等新链接收录后会恢复。

Q:改版后流量掉了怎么补救?

A:检查301是否正确、robots是否允许收录、页面是否可抓取。发现问题立即修复,然后持续更新高质量内容。

推荐阅读


改版遇到SEO问题?加我微信:15207283116,备注「改版SEO」


标签:博客改版,百度收录,301重定向,SEO优化,网站迁移