博客2.0

前情提要

好像是2018年吧,三四月份的时候我为了找工作留出正经实习时间,就报名参加了学校的提前批实习,去中兴听课。那会正逢中兴被美国制裁,所讲课的老师也无精打采的。为了打发时间我就带上了Surface。刷着刷着微博,好像时光有点虚度,就决定搭一个博客。当时我还有个搬瓦工的祖传好价服务器,就现注册了域名,即refrigetwo.moe。用lnmp+Wordpress攒起来了当时的博客,装了个markdown插件,正好学学markdown怎么用。

后来到了六月,BML SP请了Poppin‘ Party,我们群里想做一个花篮,需要用到游戏里的素材。作为半个主催(其实是纯干活的),我就揽下了设计这个事。当时瞎谷歌查怎么给游戏解包,提取出想要的素材之后写了几篇总结文章放到了博客上。

老博客文章

那个博客好像就这么些内容,后来就被我渐渐忘了。直到有一天,我Gmail收到了搬瓦工的邮件,内容是,我因为欠费,服务器被撤销了。当时那个服务器上除了博客之外,还跑了一个ss server和kms server,其实这两个都无关紧要,重点是,我一个快照都没做过。也就是说,我的博客在互联网的北风中就这么消失了。

后来,我马上把ss server和kms server转到了Amazon的Lightsail上,域名也早早绑好,准备重新把博客迁移过去。但是拖延如我,拖到现在,已经两年有余了。今天本来是久违的双休,但是莫名很早就醒了。躺在床上赖着也睡不着,干脆爬起来把博客复活一下,顺便还能记录下自己生活之后如何在电子方面丰富生活的。老博客的文章到现在也很久了,邦多利应该也更新了加密方法,当时用的七牛图床也挂了,所以干脆从头来过。于是就有了这个新的博客。

选型

相比于上次的Wordpress,这次我选择了Hexo+Github Page的组合,原因无非几点:

  1. Wordpress过于重型,在只有500MB的内存上跑的不说吃力,但也说不上轻巧,所以换用Hexo。
  2. 选用Github Page则是因为——是免费的,能让我省下每个月3.5刀的Lightsail钱。而且我也不需要动态网页,这个足够了。
  3. 为什么没跑在自己家的服务器上呢(这个服务器之后会写)?虽然联通很慷慨的,没问就给了我们家公网IP,但是国内运营商的尿性路人皆知,没准哪天就没了,所以还是部署到稳定的第三方比较合适。

博客搭建

Workflow

Hexo Workflow

Hexo其实是基于Node.js的一个本地环境,类似gitbook,能让用户使用markdown写好文章后,按照既定的主题和模板生成静态网页,再push到(在Hexo中叫Deploy,部署)Github Page的仓库,就可以访问了。

过程

Hexo安装

因为Hexo作者是台湾人,所以中文支持很完善。中文官网是 Hexo ,需要的环境是Node.js和Git。

在博客的目录中使用 npm insatll hexo-cli -g 安装完毕后,还需要安装一个用于部署的模块 npm install hexo-deployer-git --save ,这样Hexo就安装好了。在命令行中使用hexo命令时,需要管理员权限。

Hexo配置和主题

早就听闻Hexo的主题很丰富,今天果然挑的眼花缭乱。具体主题的设置就不说了,值得一提的是,主目录下的 _config.yml 是Hexo整体的配置文件,相关字段定义可以在官网文档找到,而主题的配置文件在 theme/主题名/_config.yml 中,顺便注意yml文件的写法,因为是第一次接触所以生成网页的时候因为这个吃了好几次error。

创建文章

创建文章的命令是 hexo n '标题' ,其实就是 hexo new '标题' 的简写。同样的简写还有:

1
2
3
hexo g == hexo generate	#生成网页
hexo s == hexo server #临时预览
hexo d == hexo deploy #部署

这三条其实基本覆盖大部分场景了,少打几个字还蛮不错的。

创建好的文章保存在 source/_posts/ 下,用markdown写好,使用 hexo g 后,会自动生成首页。在部署前可以用 hexo s 在本地开一个服务器预览一下,没问题后再部署。

部署博客

如果是像我一样,使用Github Page托管博客的话,需要在主目录的 _config.yml 中添加以下字段

1
2
3
4
deploy:
type: git
repo: github page的repo的.git地址
branch: master

这样在 hexo d 后就会自动把生成的静态页面push到github了。因为我还在自己的域名中加了一个CNAME解析指向本博客,所以 source/文件夹下还需要一个CNAME文件,内容是解析的域名。在部署完成后,就可以访问域名查看博客了。

TODO

搭建完成后,我发现Hexo其实很像Gitbook,这种在本地编译的方式很适合Github Page。同时又带来了一个问题:在我出差只带着笔记本的时候想编辑博客的话,如果我是Wordpress用户,直接登陆后台编辑即可;但作为Hexo用户,只能重新配置环境。所以我在考虑是否需要把Hexo环境配置到另一台远程服务器中,但这也是后话了。

一点没用的话

在写这篇博文的过程中,我时有回忆到还在用博客1.0的日子。当时,为了现在看来可能有点傻逼的事情奔波,无谓的消耗时间,但是又快乐而纯粹。现在两年了,我的生活也有了不好说翻天覆地,至少宫移羽换的变化。回顾过去可能已无意义,但是当时的生活确实值得珍惜。