前言

博客搭建好了,文章也写了不少,但在百度/Google 上搜不到?这是因为搜索引擎不知道你网站的存在,或者不知道哪些页面可以收录。

这篇教程将带你完成 Hexo 博客的完整 SEO 配置,让百度、Google 等搜索引擎能够收录你的每一篇文章。


一、安装 Sitemap 插件(必做)

Sitemap(站点地图)是一个 XML 文件,告诉搜索引擎你网站有哪些页面可以收录。

1
npm install hexo-generator-sitemap hexo-generator-baidu-sitemap --save

在站点 _config.yml 末尾添加:

1
2
3
4
5
# 站点地图
sitemap:
path: sitemap.xml
baidusitemap:
path: baidusitemap.xml
  • sitemap.xml → 提交给 Google / Bing
  • baidusitemap.xml → 提交给百度

二、安装 robots.txt 插件(必做)

robots.txt 是指引爬虫访问你网站的"路标"。没有它,爬虫可能不敢爬你的页面。

安装插件自动生成:

1
npm install hexo-generator-robotstxt --save

在站点 _config.yml 中添加配置:

1
2
3
4
5
6
# robots.txt(自动生成)
robotstxt:
useragent: "*"
allow:
- /
sitemap: /sitemap.xml

执行 hexo g 后,public/ 目录下会自动生成 robots.txt,内容如下:

1
2
3
User-agent: *
Allow: /
Sitemap: /sitemap.xml

如果需要禁止某些目录被收录,在 disallow 下列出即可:

1
2
3
4
5
6
7
8
robotstxt:
useragent: "*"
allow:
- /
disallow:
- /private/
- /draft/
sitemap: /sitemap.xml

三、百度自动推送 JS(强烈推荐,零门槛)

百度站长平台对 .github.io 域名支持不友好,很多人注册不了。百度自动推送 JS 是更好的选择——不需要注册、不需要 token,网站有访问量就能自动推送。

原理

在每个页面底部加入一段百度提供的 JS,当用户打开你的文章时,JS 会自动把该页面 URL 推送给百度,告诉百度"这里有一篇新文章,快来收录"。

配置方法(Butterfly 主题)

在主题配置 _config.butterfly.ymlinject → bottom 末尾添加:

1
2
3
4
5
inject:
bottom:
# ... 其他脚本 ...
# 百度自动推送(无需token,用户访问时自动推送)
- <script>(function(){var bp=document.createElement('script');var curProtocol=window.location.protocol.split(':')[0];if(curProtocol==='https'){bp.src='https://zz.bdstatic.com/linksubmit/push.js'}else{bp.src='http://push.zhanzhang.baidu.com/push.js'}var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(bp,s)})();</script>

其他主题同理,把这段 JS 加到每个页面的 </body> 前面即可。

优势

对比 站长平台 API 推送 JS 自动推送
需注册 ✅ 必须 ❌ 不需要
需 token ✅ 必须 ❌ 不需要
需验证 ✅ HTML/DNS 验证 ❌ 不需要
推送时机 hexo d 部署时 用户每次访问时
适合域名 自有域名 任何域名(含 github.io

部署后,只要有人访问你的博客,百度就会收到推送通知。访问量越大,收录越快!


四、Google 收录(推荐)

Google 收录相对友好,提交 sitemap 即可。

4.1 添加站点

  1. 访问 Google Search Console
  2. 点击「添加资源」→ 输入你的域名
  3. 验证所有权(推荐 HTML 文件验证,和百度类似)

4.2 提交 Sitemap

  1. 进入站点 → 左侧菜单「站点地图」
  2. 在「添加新的站点地图」中输入 sitemap.xml
  3. 点击「提交」

Google 会开始抓取你的网站,一般几天内就会收录。


五、Bing 收录(白捡流量)

Bing 也会给网站带来一部分流量,配置很简单:

  1. 访问 Bing Webmaster Tools
  2. 可以用 Google 账号直接登录导入站点
  3. 提交 sitemap.xml

六、验证是否生效

检查 robots.txt

部署后在浏览器访问:https://你的域名/robots.txt,应该能看到你写的内容。

检查 sitemap

访问:https://你的域名/sitemap.xmlhttps://你的域名/baidusitemap.xml,应该能看到 XML 内容。

百度收录查询

在百度搜索框输入:site:你的域名,看是否有收录结果。

Google 收录查询

在 Google 搜索:site:你的域名


七、加速收录小技巧

方法 说明
百度自动推送 JS 上面已配置,用户访问时自动推送
Google Search Console 上面已说明,主动提交 sitemap
多发文章 保持更新频率,搜索引擎会提高抓取频次
外链建设 在其他网站留下你的博客链接
社交分享 在知乎、CSDN 等平台分享文章链接(带来自然流量 = 自动推送)

八、常见问题

Q: 百度为什么不收录 GitHub Pages?

A: 百度对 .github.io 域名的收录较慢,甚至百度站长平台可能不允许添加。本文采用的是百度自动推送 JS,不依赖站长平台,用户的每次访问都会自动通知百度。多发文章 + 多分享,慢慢就会收录。

Q: 需要等多久才能被收录?

A: Google 一般 1-3 天,百度可能需要 1-4 周甚至更久。主动推送可以缩短到几天。

Q: robots.txt 的 Disallow 怎么用?

A: 如果你某些页面不想被收录,在 _config.yml 中配置即可:

1
2
3
4
5
6
7
8
robotstxt:
useragent: "*"
allow:
- /
disallow:
- /private/
- /draft/
sitemap: /sitemap.xml

总结

完成以上配置后,你的博客就有了完整的 SEO 基础:

  • ✅ Sitemap — 告诉搜索引擎有哪些页面
  • ✅ robots.txt — 允许爬虫访问
  • ✅ 百度主动推送 — 加速百度收录
  • ✅ Google Search Console — 加速 Google 收录
  • ✅ Bing Webmaster — 额外流量来源

接下来就是坚持写文章,搜索引擎会越来越信任你的网站!🚀