我为什么又换博客框架了?

我的小站 2015 年初上线,还有三个月就满两年了,从一开始的 WordPress 到 Typecho 再到 WordPress,我每一次更换都是代表着我对博客看法的变化。

  • 最早用 WordPress 是因为它相对其他博客来说简单省心,而且插件多,可以满足我各种需要。
  • 后来一个月不到就换了 Typecho,是因为,我发现 WordPress 的访问缓慢,对服务器配置要求较高,我为了省些钱,就换了对配置要求低的 Typecho。
  • 直到 2016 年夏,终于觉得博客一成不变很久了,Github 送的 Digital Ocean 主机的优惠券还剩很多余额,干脆就搞点厉害的吧,就这样换了 WordPress。

可能是到了现在优惠券的余额终于用完了吧,没有钱再买主机了,看到了免费的 Hexo + Github Pages,静态博客速度又快,除了部署麻烦点,其他都是优点啊,那就换吧

说整就整

昨天下午在 Google 上找了许多 Hexo 部署在 Github 上的资料,Chrome 里的标签页开了无数个,一个又一个的参考,自己动手!
其实整个过程都很顺利,在本地的测试环境中看了预览效果,非常的好,速度非常快,内心无比的激动,等到我准备部署到 Github 上的时候,问题来了。

一个有点让人崩溃的小问题

当我打了 hexo d 之后,走一堆代码,然后挂在了这里: No supported authentication methods available (server sent: publickey)
无论用网上找到的哪个方法都解决不了,简直想让人放弃,看了一晚上也没能解决。今天继续看,我甚至怀疑是安装过程中哪里出错了。尝试删干净重装也无能为力。最后忘了在哪个页面看到一句“重装 Git 选择使用 OpenSSH“,又令我看到了希望。随即重装了一遍 Git,在选择 SSH那步,因为我电脑安装了有 PuTTY,所以上次安装选择了 PuTTY 的 plink,这次不用它了,选择 OpenSSH,果然问题解决了。
其实这里还有个小点,hexo d 在 Git Bash 中是没有问题的,在 CMD 中就会出错,所以能用 Git Bash 就不用 CMD。

Hexo+Github 不能与 SSL 共存?

其实 Github Pages 使用自定义域名不能使用 SSL 很让我头疼,因为我以前的网站是开了 HSTS 的,也就是说,如果你原来访问过我的网站,一个月内再次访问我的网站都会强制使用 SSL。起初我设置这个是为了安全着想的,可是现在不能用 SSL就意味着,一个月曾经打开我网站的人都无法访问我的新站点。气。
还好,天无绝人之路,Cloudflare 提供了一种解决办法,使用 Cloudflare 的 CDN 服务,用户到 Cloudflare 的连接是可以使用 SSL 的,Cloudflare 到站点之间不使用加密,这样就解决了用户访问时可能会出现的被 HSTS 策略禁止访问的问题。同时也相对提高了一些安全性,也比原来的博客拥有了更快的连接速度,Cloudflare 分布全球的 CDN 保证了各地都可以稳定访问(说的好像有多少人看我的博客一样)。

后记

折腾好博客后,我只用操心域名的付费就行了。只要 Github 和 Cloudflare 一天不倒闭,我的网站就会一直存在。在做好了所有的工作后,其实非常有成就感,就像我现在看我写的满屏幕博文一样,写了这么多也很有成就感,一本满足。其实,钱不是什么大事,毕竟一个月 35 块主机很便宜了,最重要的还是享受那种折腾带来的满足感,用着 Github 服务器的满足感,一个小小的极客就是这么容易满足,嘿嘿。