美文网首页关于hexoHexo
生成永久链接(permalink) | hexo

生成永久链接(permalink) | hexo

作者: 好好编程 | 来源:发表于2017-11-07 20:52 被阅读138次

hexo默认的文章链接形式为domain/year/month/day/postname,当我们把文章源文件名改掉之后,链接也会改变,这很不友好。
这里介绍一种方法来生成永久链接。使用的是node.js常用的自动构建工具grunt.

步骤为:

  1. 文章的Front-matter中加入一个abbrlink 字段

    image
  2. 使用grunt的插件grunt-rewrite自动填充abbrlink的值
    编辑 Gruntfile.js

module.exports = function(grunt) {
 
  grunt.initConfig({

    rewrite: {
      abbrlink: {
        src: 'source/_posts/**/*.md',
        editor: function(contents, filepath){
          const crypto = require('crypto');
          const hash = crypto.createHash('sha256');

          hash.update(contents);
          var hashValue = hash.digest('hex');

          return contents.replace(/@@abbrlink/g, hashValue.substring(0, 16));
        }
      },
    },
  });
 
  grunt.loadNpmTasks('grunt-rewrite');
};

这表示,插件到source/_posts/ 下读取所有的.md文件,把文件中的@@abbrlink替换成文件内容的hash值。

  1. 编辑站点配置文件_config.ymlpermalink
permalink: posts/:abbrlink.html

最后,当我们运行grunt rewrite后,@@abbrlink会被替换成一个16位的hash值。
链接地址变成www.wangjinle.com/posts/916d83182e15eeb1.html这种样式,只要不去改动这个hash值,链接地址不会变。

相关文章

  • 生成永久链接(permalink) | hexo

    hexo默认的文章链接形式为domain/year/month/day/postname,当我们把文章源文件名改掉...

  • 搭建个人博客 hexo + github 传图片长久链接等

    个人博客 搭建博客步骤 技巧: 永久链接 Hexo的永久链接的默认格式是 :year/:month/:day/:t...

  • Hexo设置永久链接

    前言 在做次优化之前,hexo-next文章链接默认的生成规则是::year/:month/:day/:title...

  • 在windows下安装hexo

    hexo是什么?简单的说,就是一个静态博客的生成工具,我这个博客就是就是基于hexo生成的。文章结尾的官网链接中也...

  • Hexo博客添加腾讯404公益页

    背景 当用户点击我们发布的一些旧链接,而 Hexo 的链接都是永久链接,如果该文章被我们删除或者更改了链接,那么用...

  • 生成永久链接的办法

    自从微信官方将素材库文章预览功能更改为‘每次从素材库预览的链接为临时链接,并且将在12小时后或超过500阅读量就会...

  • Hexo插件-将文章标题转成英文

    初学nodejs,最近在用hexo写博客,但是苦于MD文件中的permalink需要自己手动输入,略感不爽。因为在...

  • Hexo 学习

    hexo 安装 安装 生成hexo项目 进入工程 安装 生成发布文档,或者生成build文档查看 hexo 开启搜...

  • Hexo添加音乐

    摘要 在hexo文章添加网易音乐插件 生成音乐链接 打开网易云音乐,搜索想要的音乐,点击生成外部链接播放器 获取h...

  • 怎样在公众号文章里插入未群发图文消息链接?

    安装“新媒体管家”插件 进入公众号后台——素材库,预览该文章,点击页面顶部的“生成永久链接”按钮 点击“生成短链接...

网友评论

    本文标题:生成永久链接(permalink) | hexo

    本文链接:https://www.haomeiwen.com/subject/ekksmxtx.html