最近准备重新捡起很久没写的博客,在浏览器里打开博客页面,发现博客页面的样式文件已经丢失,就像年久失修的房屋一样。想要重新开始写博客,首要的是升级下博客使用的静态页面模板。
以下命令行操作,如果没有特殊描述,都是在博客文件夹根目录下执行。
升级 Hexo 版本
思路:主要先升级 node.js
和 hexo-cli
的版本,其次借助 npm
相关工具包的能力,更新 hexo
下依赖的部分 npm
包的版本,主要是插件部分。
- 升级
node.js
版本。v12 -> v14
由于我使用的是 nvm
管理 node.js
的相关版本,直接使用 nvm use
即可。
nvm install v14
nvm use v14
- 升级
hexo-cli
版本。
或者卸载重新安装 hexo-cli
npm install -g hexo-cli
- 更新
npm
插件
安装工具包
npm install -g npm-check
npm install -g npm-upgrade
升级 npm
依赖,按照提示升级对应插件的版本即可
npm-check
npm-upgrade
npm update -g
升级 Next Theme 版本
老版的 hexo
安装主题是直接把主题拉取放到 theme
目录下,自从 5.0
版本之后,支持通过 npm
包的方式安装主题。所以我删除了原本的 theme
主题,通过 npm
安装了最新版本的 NexT Theme。
NexT Theme 文档:
If you’re using Hexo 5.0 or later, the simplest way to install is through npm:
npm install hexo-theme-next
新版的主题配置文件,博客根目录下 _config.next.yml
。
至此,基本上的版本升级就完成了。不过由于版本跨度的原因,我没有保留原有的 NexT 的配置文件,而是直接在配置现有的主题配置文件。
博客本地图片链接修复
老版本依赖 hexo-asset-image
提供引用本地相对路径图片的能力,以使用原生 Markdown 渲染,自从 Hexo 5
版本后,该插件就失效了,所以使用 hexo-asset-img
插件替换。
卸载 hexo-asset-image
插件,安装 hexo-asset-img
npm uninstall hexo-asset-image --save
npm install hexo-asset-img --save
不过实际尝试之后,发现 about
页面的图片仍然无法展示,暂时先搁置该问题了。
自定义域名
-
域名服务商处配置 DNS
CANME
记录。 -
添加
CNAME
文件 Github Pages 提供了自动域名的能力,不过由于 Hexo 每次部署都是重新推送文件到 Github 仓库,所以在设置中配置自定义域名会被覆盖,解决办法是在source
文件夹下添加文件名为CNAME
的文件即可。
Hexo 的文档中提到:
若你使用了一个带有 CNAME 的自定义域名,你需要在 source/ 文件夹中新增 CNAME 文件。
文件内容示例,以我的域名为例:
blog.guanglai.me
谷歌网站验证
在启用 Google Search Consloe 提交网站收录时,需要验证网站所有权,Google 给的其中之一的方式是在网站首页添加 HTML 标记。

在 NexT 的配置文件中 _config.next.yml 配置如下内容,配置对应 token 即可。
google_site_verification: your_token
图片缩放
<p>
<img src="./picture-in-hexo/test.jpg" title="图片标题" alt="没有加载时显示的内容" style="zoom:25%">
<div class="img-alt is-center" align="center">图片标题2</div>
</p>
特殊配置
- sitemap 开启站点地图,方便搜索引擎 SEO
- local search 提供简单的本地搜索功能
- utterances 替换 gitalk,作为博客评论插件
- mathjax LaTeX 语法的数学公式支持
- post edit 可以直接在对应的 Github 仓库源文件修改,搭配 Github Action 可以在修改后自动发布