Hexo之SEO优化文章链接

​ 在给博客绑定完域名后,终于实现了直接通过域名访问。但是总觉得又少了什么,能不能在搜索引擎中找到我的博客呢?于是在一番搜索下,无一例外的都是提示没有找到该URL。又是在一番搜索之下,了解到需要给自己的网站做SEO,提交SiteMap给搜索引擎。期间在提交SiteMap过程中,看到提交的URL文章结构层级实在复杂,文章链接默认的生成规则是::year/:month/:day/:title,这相当于访问了三层目录,不利于SEO。最终我在github上找到了合适的解决方案。

hexo-abbrlink 插件

A Hexo plugin to generate static post link based on post titles.

1.安装

​ 先在博客文件夹下安装改插件:

npm install hexo-abbrlink --save

2.配置插件

​ 在项目的_config.yml文件中加上permalink字段

url: https://yykaoyanupup.xyz/
permalink: posts/:abbrlink.html  # 此处可以自己设置,也可以直接使用 :/abbrlink
abbrlink:
    alg: crc32   #算法: crc16(default) and crc32
    rep: hex     #进制: dec(default) and hex

3.实现细节

可以看到abbrlink配置了alg和rep,这里简单介绍下配置内容

3-1:CRC

​ CRC本身是“冗余校验码”,在计算机网络中有接触过,在数据存储和数据通讯领域,为了保证数据的正确,就不得不采用检错的手段 。如果要实现差错检验,必须在发送数据的后面增加校验码,否则实现不了。校验码的值由校验方法决定。CRC循环冗余校验的细节这里先不做介绍,一般网卡的生成多项式都是CRC-16或者32。位数很多。这样就降低漏检率。比奇偶校验强多,效率也高。CRC32就是表示会产生一个32bit(8位十六进制数)的校验值。

3-2:hex

​ Hex是一种编码吗,就是把一个8位的字节数据用两个十六进制数展示出来,编码时,将8位二进制码重新分组成两个4位的字节,其中一个字节的低4位是原字节的高四位,另一个字节的低4位是原数据的低4位,高4位都补0,然后输出这两个字节对应十六进制数字作为编码。Hex编码后的长度是源数据的2倍

4.优化效果

配置不同校验码和编码格式会对生成的ID有不同的效果,这里展示一些样例:

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

配置完成后通过hexo三连会发现,文章的层次目录也发生了改变,文章新增了abbrlink字段,这样链接就确定下来了,无论怎样更改文章都不会对链接产生影响。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值