Github+Hexo 个人博客搭建:SEO 优化及站点被搜索引擎收录设置

必须要有自己的域名

网站优化

想要收索引擎重视,就得先对自己网站或者博客进行优化、如:标题标签、Meta 描述、Meta 关键字、XML 网站地图、Robots.txt、网站图标、自定义 404 页面、加载时间 (速度)、以及网站结构

文章永久链接

https://github.com/rozbo/hexo-abbrlink

这样你修改文件名、文章名称或者日期后,文章链接不会发生变化

生成完后,原 md 文件的 Front-matter 内会增加 abbrlink 字段,值为生成的 ID 。

这个字段确保了在我们修改文件名或标题之后而不会改变链接地址。

将插件添加到 Hexo:

1
npm install hexo-abbrlink --save

修改 config.yml 文件中的永久链接:

1
2
3
4
5
6
permalink: posts/:abbrlink.html
# or permalink: posts/:abbrlink/

abbrlink:
alg: crc32 #算法: crc16(default) and crc32
rep: dec # dec数字 hex哈希串

示例

1
2
3
4
5
6
7
8
9
10
crc16 & hex
https://post.zz173.com/posts/66c8.html

crc16 & dec
https://post.zz173.com/posts/65535.html
crc32 & hex
https://post.zz173.com/posts/8ddf18fb.html

crc32 & dec
https://post.zz173.com/posts/1690090958.html

Head 头部优化

修改_config.yml 的关键字配置
image-20220117135018965

hexo-filter-nofollow 插件

https://github.com/hexojs/hexo-filter-nofollow

为网站使用到的所有外链添加 rel=”noopener external nofollow noreferrer”, 可有效地加强网站 SEO 和防止权重流失

1
npm install hexo-filter-nofollow --save

_config.yml 中修改配置

1
2
3
4
5
6
nofollow:
enable: true
field: site
exclude:
- 'exclude1.com'
- 'exclude2.com'

集成百度分析

  1. 注册百度统计,新增自己的网站,在百度统计 - 管理 - 代码管理 - 代码获取中找到以下代码

    1
    2
    CODE
    hm.src = "https://hm.baidu.com/hm.js?c0b27e00db8b5ba6c61a2341566b61a1";

    其中 c0b27e00db8b5ba6c61a2341566b61a1 便是我的百度分析的 key,大家以自己的为准

  2. _config_butterfly.yml 中修改配置 key

    1
    2
    3
    4
    YAML
    # Baidu Analytics
    # https://tongji.baidu.com/web/welcome/login
    baidu_analytics: c0b27e00db8b5ba6c61a2341566b61a1
  3. 此时生成的静态网页中查看源代码可以看到以下代码

    1
    2
    3
    4
    5
    6
    7
    JAVASCRIPT
    (function() {
    var hm = document.createElement("script");
    hm.src = "https://hm.baidu.com/hm.js?c0b27e00db8b5ba6c61a2341566b61a1";
    var s = document.getElementsByTagName("script")[0];
    s.parentNode.insertBefore(hm, s);
    })();
  4. 后续可以在百度统计里面看到自己网站的流量报告
    菜单坐标: 百度统计 - 基础报告

百度收录

image-20220128004024779

链接提交方式

  • 手动提交:一次性提交链接给百度,可以使用此种方式。
  • 自动提交(虽然这种方式各有千秋,但是百度推荐全用上,全面一点!):
    1. 主动推送(实时):最为快速的提交方式,推荐您将站点当天新产出链接立即通过此方式推送给百度,以保证新链接可以及时被百度收录。
    2. 自动推送:最为便捷的提交方式,请将自动推送的 JS 代码部署在站点的每一个页面源代码中,部署代码的页面在每次被浏览时,链接会被自动推送给百度。可以与主动推送配合使用。
    3. sitemap:您可以定期将网站链接放到 sitemap 中,然后将 sitemap 提交给百度。百度会周期性的抓取检查您提交的 sitemap,对其中的链接进行处理,但收录速度慢于主动推送。

验证站点

https://ziyuan.baidu.com/site/index

image-20220128003738272

选择 HTML 验证

image-20220113230825020

_config.butterfly.yml 中添加复制的内容

image-20220113230942470

验证成功

image-20220113231019044

提交链接

添加插件 hexo-baidu-url-submit

1
npm install hexo-baidu-url-submit --save

获取 Token
image-20220113231750742

配置 百度主动推送

同样在根目录下,把以下内容配置到_config.yml 文件中,注意是博客的根目录噢

1
2
3
4
5
6
# 百度主动推送
baidu_url_submit:
count: 100 # 提交最新的一个链接
host: imzjw.cn # 在百度站长平台中注册的域名
token: YourToken # 请注意这是你百度站长平台主动推送的的秘钥, 所以请不要把博客源代码发布在公众仓库里!
path: baidu_urls.txt # 文本文档的地址, 新链接会保存在此文本文档里

最后,加入新的 deploy (可以参考一下我的_config.yml 文件)

1
2
3
4
5
6
7
8
9
10
11
12
deploy: # 定义部署
- type: git
repo:
github: https://github.com/XXX/XXX.git,master
- type: baidu_url_submitter

# 百度主动推送
baidu_url_submit:
count: 100 # 提交最新的100个链接
host: likfees.github.io # 在百度站长平台中注册的域名
token: YourToken # 请注意这是你百度站长平台主动推送的的秘钥, 所以请不要把博客源代码发布在公众仓库里!
path: baidu_urls.txt # 文本文档的地址, 新链接会保存在此文本文档里

如何进行推送

执行 hexo d 的时候,新的链接就会被推送了。如下图

image-20220113232317235

重新生成后,我们可以发现在 public 目录下生成有 baidu_urls.txt 里面的就是推送的链接.

sitemap 提交

安装 hexo generator-baidu-sitemap 插件

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

然后在博客的根目录下的_config.yml 里面手动加入配置

1
2
baidusitemap:
path: baidusitemap.xml

之后去百度站长平台提交一下 sitemap 的路径就好,如:https:// 你的博客地址 /baidusitemap.xml

image-20220128004424016

Google 收录

登录 Google 账号,打开谷歌搜索控制台 添加你的网站,需要验证网站,它那里会提供几种验证方式,验证方式和 baidu 一样

image-20220128003855195

验证成功后不是当天就是明天就能在 Google 找到你的网站了,谷歌搜索输入如 site:域名

谷歌 sitemap 提交

提交 sitemap,上面使用的是百度的 sitemap 也可以,如果 Google 识别不了,可以使用通用 sitemap 生成器
安装 hexo-generator-sitemap 插件

1
npm install hexo-generator-sitemap --save

配置 博客根目录下 的_config.yml, 手动输入以下配置

1
2
sitemap: 
path: sitemap.xml

执行 hexo g 重新生成,会在 public 目录下生成 sitemap.xml 文件,发布后,就可以在 Google 控制台提交这个 sitemap 了

image-20220128003559577

必应收录

  1. 点击进入必应搜索控制台
  2. 网站验证和前边相同 或 直接通过 google 导入
  3. 添加站点地图