在CentOS 6上使用Jekyll+Nginx搭建博客

Posted by KevinLT on July 1, 2018

VPS买了快一年了,一直想用它来搭建一个自己的博客。 之前有试过使用WordPress,但是奈何文章输入的体验太不好了,而且感觉很臃肿。 后来发现了Jekyll这么一个工具,它能方便的帮助用户搭建静态网站。 配置好模板之后,只需要写好mardown文档,Jekyll就能自动帮你生成漂亮的博客。 于是乎,就有了本博客的诞生。

环境介绍

我的VPS是在Bandwagon上购买的,用的最便宜的套餐,配置为10G的存储空间,512M的内存,每月500G的网络流量,基本够用。 Bnadwagon感觉简直就是为国人优化的,支持支付宝付款,支持一键搭ShadowSocks服务器,十分良心。 VPS上运行的系统为32位的CentOS 6,比较老了,所以安装Jekyll和Nginx需要进行额外的操作。

Jekyll

Jekyll的文档可以看这里。 官方文档还是比较详细的。 中文文档也有,但是不推荐看,部分内容更新不太及时。

安装过程参考的这篇文章。 1. 安装rvm
rvm全称为Ruby Version Manager,作用类似与python中的pip,用于对ruby环境进行管理。 由于CentOS 6官方库当中的ruby版本比较老了,所以需要rvm来安装新版的ruby。
首先需要安装秘钥:

然后安装rvm:

最后下载rvm依赖包:

  1. 安装ruby
    使用rvm list known可以列出可用的ruby版本,选择好版本后即可通过以下命令安装ruby,其中a.b.c为要安装的版本。
  1. 安装jekyll
    安装好ruby后即可安装jekyll了

Nginx

Nginx的配置我参照的是这篇文章
Nginx是一款轻量级的Web服务器,性能也十分不错,很适合在VPS上运行。

  1. 安装Nginx
    创建一个/etc/yum.repos.d/nginx.repo文件,即可将nginx添加到yum的库中,其内容如下,注意$releasever要填CentOS的版本,此处为6。
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1

创建好后即可通过yum安装nginx

  1. 复制网站内容至Nginx目录下
    使用Jekyll构建完网站之后会生成_site目录,该目录下即为静态网站的内容,须将其复制到网站的root目录下。 root目录的路径可到Nginx的配置文件下查看,我的配置文件路径为/etc/nginx/conf.d/default.conf

模板

本博客的模板是由Hux所设计的,Github链接在这里
参考了github中的issue做出了一些改动:

  • Liquid警告问题: 解决办法可以看这里。 这是由于Jekyll版本问题引起的。 作者是在Github Pages上搭建的网站,Jekyll版本为3.0.2,而我使用的Jekyll版本为3.8.3,部分语法没有向后兼容,故会报出警告。
  • 文章右侧出现滑动条问题: 解决办法可以看这里