2019-08-11 | 研究与探索 | UNLOCK

使用hexo建站

原来的虚拟主机快到期了,wordpress的使用体验还算好,但是很不neat。正好我很喜欢Markdown格式,所以今天尝试把博客转移到了Hexo上。

首先是Node.js的安装,我是新手,这可真是要了我的老命……折腾半天发现其实只要在/usr/local/bin下加上nodenpm的链接到下载的二进制文件上就行,不过这时我已经安上nvm了。

npm安装包默认是安装到项目下的,习惯于pip的我因为忽视了这点乱用sudo npm结果重装了工具链两次……其实需要用到sudo的地方只有npm install hexo-cli -g而已。

所有的事情只要熟了其实概念挺清晰的,基本如下:

1
2
3
4
5
$ sudo npm install hexo-cli -g   # 安装hexo命令行工具
$ hexo init myblog # 新建myblog目录,这里实际上是新建了一个node项目
$ cd myblog
$ npm install # 安装依赖
$ npm install hexo-server --save # 安装hexo服务器,可以方便地在本地查看效果

失败经历中有一次我把npm install hexo-server --savenpm install的顺序弄反了,结果死活无法运行hexo server,只能重建了一次目录……

为了能显示$\mathrm{\LaTeX}$代码,我先是装了hexo-math,结果没有用,只能按照这里的方法换上Kramed,并修改解析规则,结果运行服务器时报错。还好找到了这篇文章,这里面替换的escapeem行才是正确的。

我还发现整个页面加载的很慢,导致MathJax渲染的时间相当滞后,在浏览器上调试后发现是主题要加载一个jquery.min.js,然而是用的Google的CDN地址,所以一直下载不下来,万恶的GFW!我把themes/landscape/layout/_partial/after-footer.ejs里的相关地址替换成了能下到的CDN,速度就快起来了。

整个过程中除了不熟悉工具,最耗时的一点是逐篇修正原来的博客,现在还剩下几篇,主要是得把原站点的图片全整到图床上去,hexo的migrate工具也不是那么完美,还要修改很多代码……

最后还要把整个博客部署到新主机上,任务还挺多的。