HOME

Github page Jekyll静态博客迁移到vps

在网上搜如何将静态博客迁移到vps 上,没找到太多详细的资料,有的文章也只是了了几句,仿佛这是一件简单到无需多言的事。开始让人摸不着头脑,无从下手。事实上并不难,我把自己的迁移过程记录下,希望可以帮助到大家。

静态博客其实只是一堆网页文件而已,评论靠第三方评论系统,不需要数据库。所以只需要在vps 上安装好jekyll (博客生成工具,用于把md文件生成为html文件)和web服务器(我选择了lighttpd ,内存开销低,cpu占用少)。

Table of Contents

安装

linux 下Jekyll 的安装,网上教程很多,大致是先安装RVM,用RVM 安装ruby,然后安装rubygems ,nodejs ,最后用gem安装jekyll,其间缺少什么软件就装上。

lighttpd的安装也简单,可以用包管理安装,也可以下载源码编译安装,网上教程很多。lighttpd的配置文件要修改下,注释很丰富的。记下server.document-root 的目录。

配置调整

从github上下载博客同名的库,切到博客目录下。 我设置了一个wiki.houye.xyz的子域名,所以需要多做点操作。前两行应该就够用了,-s 后跟博客目录,-d 后跟server.documnet-root的目录。 博客生成脚本

#!/bin/bash
jekyll b -s /opt/truehyp.github.com -d /srv/www/blog
rm -f /srv/www/wiki/!\(css\)
mv /srv/www/blog/wiki/* /srv/www/wiki/
rmdir /srv/www/blog/wiki

自己用的文章文件生成脚本,也贴这里。

#!/bin/bash
if [ $# -ne 1 ]
then
    echo "Right Format: \"./toumd yourtitle\""
    echo "Try Again!"
    exit
fi
post="$(pwd)/_posts/$(date +%F)-$1.md"
echo "---">$post
echo "layout: post">>$post
echo "title: ">>$post
echo "---">>$post
echo "touch $post"

启动lighttpd,运行第一个脚本,然后访问vps的ip,就能看到你的博客了。去域名商那里修改下域名解析,用域名访问博客。

博客备份

vps是在美国的,所有我选择了用dropbox来备份重要文件。具体步骤看这篇文章——vps自动备份到Dropbox

你可以设置备份的天数,我设置了7天,也就是说,本地和dropbox都有近7天的备份数据,数据丢失的可能性几乎没有了。