Hexo博客使用插件hexo-abbrlink生成永久短链接

本文最后更新于:2020年7月4日 晚上

一、简述

使用Hexo搭建博客已经有很长一段时间了,文章的链接也一直是使用的默认格式,文章的链接格式可以在博客根目录下的 _config.yml 文件中修改,默认的配置如下所示,最终生成的链接大概是这样的:https://mxy493.xyz/2020/07/04/title

url: https://mxy493.xyz
root: /
permalink: :year/:month/:day/:title/
permalink_defaults:

更多关于永久链接的配置可以参考Hexo的官方文档:永久链接(Permalinks)

如果说文章的标题是英文,那么生成的链接还是比较简洁的,但如果是是中文的标题,比如2020年7月1日的标题为“成都有计算机方向岗位的互联网公司”的文章生成的文章链接将是这样的:http://mxy493.xyz/2020/07/01/%E6%88%90%E9%83%BD%E6%9C%89%E8%AE%A1%E7%AE%97%E6%9C%BA%E6%96%B9%E5%90%91%E5%B2%97%E4%BD%8D%E7%9A%84%E4%BA%92%E8%81%94%E7%BD%91%E5%85%AC%E5%8F%B8/

可以看到,默认配置下中文标题的文章链接是很复杂的类似于乱码的状态,而同样的中文标题,本文要达到的效果将是这样的:https://mxy493.xyz/2020070151339/

二、使用 hexo-abbrlink 生成短链接

使用生成短链接的插件 hexo-abbrlink

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

在博客根目录下,使用如下命令安装插件:

npm install hexo-abbrlink --save

安装好后,修改博客根目录下的 _config.yml 配置文件:

permalink: :year:month:day:abbrlink/   # 具体配置参考Hexo文档https://hexo.io/zh-cn/docs/permalinks

注意:末尾必须要有 / ,否则点击某博文的时候将进行下载操作而不是跳转到该博文!

另外还需要添加如下的对该插件的配置项:

# abbrlink config
abbrlink:
  alg: crc16  #support crc16(default) and crc32
  rep: dec    #support dec(default) and hex
  drafts: false #(true)Process draft,(false)Do not process draft
  # Generate categories from directory-tree
  # depth: the max_depth of directory-tree you want to generate, should > 0
  auto_category:
     enable: false
     depth:

注意:必须完整添加上述所有配置(可能是bug,当前版本为2.1.5,也许后续会修复),否则会生成失败!

不同参数的效果如下所示:

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

最后,感谢开发者开发的这么好用的插件(╹ڡ╹ )