使用博客一年有余,经历了两次迁移,第一次迁移由无需备案的香港虚假主机迁移到免费的需要备案的阿里云虚拟主机,访问速度有加快,貌似seo也有提升。第二次就是这次,由阿里云主机迁移到github pages,众所周知,我天朝对访问外国网站都出奇的慢,百度对外网的收录也不积极。考虑再三,决定迁移到github,因为我追求的是简洁和效率,有这就足够了!下面说下迁移的原因

wordpress不适合程序员写文章

一年多前,初次看到wordpress,心中感叹道:竟然有如此快捷的方式搭建博客!!只需要php环境的虚拟主机,一个域名,一个mysql数据库,然后把wordpress代码通过ftp传到虚拟主机上,接着通过wordpress引导,不需要其他知识,一个博客就诞生了。通过丰富的插件和主题,制定符合自己风格的博客。对于普通用户来说,搭建博客的技术门槛也不高,我不会任何编程语言,但这并不影响我搭建博客!

尽管wordpress如此的强大和方便,但是对于程序员来说,wordpress并非最好的选择,我认为原因有如下:

  • 程序员追求简洁、高效,wordpress发布一篇技术文章相当费时。
  • wordpressmarkdown支持不足,代码里的<等符合经常被转义成html代码
  • 程序员更注重博客内容,而非样式
  • github pages免费,虚拟主机一般需要收费。当然,这是次要原因。

以前在wordpress写一篇技术文章需要两小时,如果用markdown写,半小时就够了,wordpressmarkdown的先天性支持不足,就是用markdown插件,也会出现写莫名其妙的问题,最深刻的就是代码李的<等特殊符号会转义成html代码。

markdown简洁高效,jekyll对markdown支持完善

markdown等标记语言解决了html标签的冗杂定义。markdown里写一个h1元素是# this is h1 title,而html里是<h1>this is title</h1>,这只是最简单的对比,markdown比html简洁很多。使用markdown这些标记语言的好处之一是:我们可以高效的撰写博客,而只是关注博客的内容。

jekyll的作用是将纯文本转换为静态博客网站,他充当一个转换者作用,我们只需要用markdown写好博客,至于怎么生成html页面,那是jekyll的工作。jekyllmarkdown等标记语言支持相当完善,几乎所有markdown扩展格式都支持。同时,jekyll可以高度自定义,可以从网络上获取各种漂亮模板,也可以自己写模板。jekyll的这些功能再次降低了搭建博客的工作量,真正最大化做到了关注博客内容本身,其他的事情,jekyll都尽力帮我们做了。

github pages 免费支持jekyll,支持域名绑定

虽然jekyll很强大,但怎么花最小的成本搭建jekyll博客呢。这时就有必要提高鼎鼎大名的github了,github推出了github pages服务,只需要在github上建立name.github.io仓库,就可以用name.github.io访问github用户主页。github page通过jekyll来生成静态网页,用户只需要提交jekyll文本文件,就可以自定义站点。通过git版本控制工具,很轻松就能发布新文章。

github pages还提供域名绑定功能。也就是说,你只需要个域名,然后设置下dns,就可以通过自己的域名访问github主页。这就相当于github给你提供了免费的主机,尽管这主机只支持静态内容。

当然github pages也有限制。github pages最多支持300Mb空间,你可能觉得空间太小,但是我认为,通过七牛等免费的存储工具,把图片视频等大文件放在七牛服务器上,在github pages使用外链链接这些资源,既满足了空间问题,又提高了国内访问速度。

至于怎么搭建和使用github pages,网上有多篇教程。推荐使用google搜索,搜索出来的文章更有质量,毕竟,翻google的墙有很多方式。