跬步 On Coding

博客迁移到github

为什么迁移

blog算是我正式的第一个Python项目,是我入门Python的基石,一直稳定的运行在SAE上,上个月我还进行过一次升级,但是SAE的MySQL服务收费来得太突然,每年大概要花200软妹币,对于一个PaaS平台来说,我认为是不划算的,鉴于静态博客的流行,所以痛下决心迁移到github pages上来。

静态博客生成器的选择

  • Jekyll
    Jekyll是静态博客生成器的鼻祖,拥有大量的模版,但是基于ruby导致文章较多的情况下会比较慢
  • pelican
    python是工作语言,所以本来是最可能选择的就是pelican,直到我找到hugo
  • hugo
    golang实现,最大的优点就是快,而且golang可以编译为二进制文件,所以安装起来非常方便

迁移过程

  • 模版
    找了一晚上的模版,最终还是找到了我在SAE上用的模版的原型lanyon,是Jekyll的模版,进而发现了lanyon-hugo,然后就是一些列的修改,最终效果就是现在的样子。还有一些问题比如不支持tags,待有时间再慢慢研究。
  • 日志迁移
    我在blog的日志是保存在MySQL的,表结构比较简单,需要做的就是读取数据库的数据,每篇日志按照hugo的文章的格式生成一个md文件,因为之前的日志正文也是markdown格式的,所以简单的一个脚本就能实现日志的转换。
  • 评论
    之前使用的评论是disqus,由于评论比较少,所以放弃了,转到多说,参照hugo的评论模版写了多说的添加到日志页模版中。
  • github pages
    在查看了若干hugo的教程后,最终是把blog上线到了github pages上,在github上创建了两个repository,一个hugo-blog用于托管hugo的网站工程,zhu327.github.io是最终静态文件库。

小结

放弃写了快2年的SAE博客还是会有点不舍,但是用github写博客也是新的体验,发布日志的过程其实也不是想象中的那么复杂,期待我能创造出更多的优质内容。

参考

http://nanshu.wang/post/2015-01-31/