给薇薇搭建Ghost博客

我又来了,哈哈哈

00,初衷

薇薇喜欢写东西,大家都是知道的了,而且写的东西都挺好的(我这种渣渣,你懂的)。但是呢,她的文章都是发表在QQ空间,新浪博客这些地方,而这些地方受到的不管是内容上还是形式上的约束都比较多。另一方面,这些地方的内容精度还是不够高,考虑到后期薇薇万一在文字界或者法律领域火了呢。我就想需要一个独立博客,让薇薇可以写任何她想写的内容,同时保证平台的独立和权威。我给自己搭的这个博客只能算是练练手,一个重要的目的还是给薇薇搭建一个体验更好的独立博客。
那么问题来了,博客平台哪家强?

01,为什么是Ghost博客系统

选择这个博客系统主要有以下几点考虑:

1.简单

说这个博客系统简单是从内到外的简单,如果你懂点node.js,你就会发现这个博客系统,在博客系统模板的构建上用了JS和HTML更为分离的Handlebars语法(点击这个链接查看Handlebars语法文档)。在主题的表现上尤其如此,你可以参考这篇文章进行Ghost博客系统主题的开发。
简单同时表现在后台处理与博客写作的分离。你根本不需要任何网页开发的知识就能够保存并发表自己的博文,你甚至还可以邀请自己的好朋友一起进行写作(在博客管理界面就可以看到)。

2.酷

说这个博客系统酷是因为这个博客系统是完全免费的,同时也是完全开源的;在写作方面,对markdown语法的支持也是相很好的。如果你是开发者,完全可以在像这些人一样为此博客系统做出贡献,你也可以点击这个链接查看一切关于Ghost博客系统的源代码。如果你只想很酷地写作,你只需要学习几个简单的markdown语法符号(几个标点而已,点击这个链接学习吧),就可以完全上手这种高效率且新潮的写作方式。

3.前景

Ghost博客系统无疑是一个很新的东西,到它向公众开放到现在(2014年12月5日),也才不过一年多一个月,而它的版本号还是0.5.5。但这并不意味着,它是一个很low的东西。看看它的开发者就知道了

Ghost 是基于 Node.js 的开源博客平台,由前 WordPress UI 部门主管 John O’Nolan 和 WordPress 高级工程师(女) Hannah Wolfe 创立,目的是为了给用户提供一种更加纯粹的内容写作与发布平台。

在我看来,这货的出现就是朝着替代WordPres(点击这个链接了解WordPress)这个大厂的目标去的。而从它的开发路线图来看,开发团队对Ghost博客系统更是寄予厚望,后期甚至有开发移动端管理平台(也就是一个app来管理)的计划。你完全可以在这个页面看到它的路线图

4.名字好听

难道不觉得么?Ghost,我大使命召唤的绝对配角,真心碉堡,嘻嘻。

5.与其他博客系统比较

在我熟悉的几个博客系统中,最酷的就是Hexo了,其次还有什么Jekyll,还有也是前文提到的著名的WordPress。这些博客系统中,Hexo和Jekyll这类型的博客系统在写文章或者发布的过程中都需要配置环境和使用命令行工具;而对于WordPress这类的成熟的博客系统,我个人认为十分的臃肿,虽然它的配置部署是可选的,但总是感觉差点什么东西,那种feel,你懂的。


02,在本地搭建Ghost博客系统的流程

  1. 配置node.js环境;
  2. 下载Ghost博客系统;
  3. 安装并运行Ghost博客系统。

出于不罗嗦的严格的自我要求,我直接附上中文文档的链接:

Windows:http://docs.ghostchina.com/zh/installation/windows/
Mac:http://docs.ghostchina.com/zh/installation/mac/
Linux:http://docs.ghostchina.com/zh/installation/linux/

需要十分注意的是:在Windows下配置node.js环境一定要在官方网站上下载最新版本的安装程序。

一切安装好后,你就可以在自己电脑上的浏览器输入http://localhost:2368访问你的博客啦。

当然这都是本地的,一般都用来调试,如果你想让你的博客能够被别人访问,那么就看接下来的步骤吧。else,Mac/Linux点最左上方的按钮,Windows点最右上方的按钮,谢谢。


03,在服务器上部署Ghost博客系统

现在一般有两种方案供选择:

第一,部署到Coding这类的PaaS平台。

如果你想要使用自己的域名,可能需要多交钱,但目前(2015年之前)Coding正在提供免费的使用服务,并提供北京或者香港的空间供你使用。据我的理解,他们应该是后期只会收取你在香港空间部署的使用自己域名的博客的钱,每月29元;但不会收取,你不需要自己绑定域名的博客的钱(或者只适用于北京的空间)。之所以这么认为,是因为,Coding这个网站是归根结底还是一个代码托管网站,如果最基本不带顶级域名的展示平台都要收费的话,岂不是很没有竞争力。

至于如何部署到Coding,你可以参见这个页面


以下内容需要你有基本的Linux操作技能,如果不是,请忽视并使用PaaS平台配置

第二,部署到自己的VPS服务器。

  • 购买VPS服务器;
  • 购买域名;
  • 配置node.js环境;
  • 下载Ghost博客系统;
  • 配置Ghost博客系统

1,vps服务器
我使用的是hi-vps家的服务,一年299元的使用XEN技术的Linux VPS,ping值一般能够达到200ms,还算不错了,价格也比较经济,也是看到v2上的推荐来这家买的。

2,域名
Godaddy进行的.me域名注册购买,一年也就60多块钱。

3,配置node.js环境
和本地配置没区别

1
2
3
4
sudo apt-get install python-software-properties
sudo apt-add-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs

4,安装Ghost博客系统

1
2
3
4
5
sudo mkdir -p /var/www
cd /var/www
sudo wget 下载地址(推荐http://www.ghostchina.com/download/这里选择)
sudo unzip 下载的压缩文件
sudo npm install

5,配置Ghost配置文件
找到解压后/var/www目录下的config.js文件,打开并编辑

1
2
3
4
5
url: 'http://mysite.com',
server: {
host: 'mysite.com',
port: '80'
}

更改为上述内容。

6,让博客一直运行
/var/www目录下
npm install forever -g安装forever插件
以下命令对应不同功能:

1
2
3
一直运行:NODE_ENV=production forever start index.js
停止:forever stop index.js
检查是否运行:forever list

至此,你就应该配置好了
之所以如此简洁,是因为我假定如果你看到了这一步应该是有一定的Linux服务器操作经验,所以不需要介绍。当然,你也可以在这个页面查看到相关教程。
需要注意的是,在使用Nginx进行代理的时候,请先调试好Ghost博客能否运行,按基本步骤部署下来也会由抽风的情况,一步搞完根本无法排查错误(经验之谈)。此外,许多人都推荐使用MySQL替换SQLite,我觉得没有必要,如果你不熟悉,千万不要去改数据库,一步错,步步错。

04,结语

连续搞了几个晚上,今天终于所有的都搞完了,挺开心的。希望薇薇没事能多写写,哈哈哈。
后续的计划是,时间充裕了改改代码增加夜间模式,然后等待文章归档功能出来后把标签云放到文章列表上方,其他的想到了再搞吧。

对于搞网站的来说,每一个margin和padding你都要仔细考虑。

这是我这几天想到的。

致谢和参考资料

感谢:
Ghost博客开发者:John O’NolanHannah Wolfe
Ghost博客开源社区贡献者
Vno主题:作者onecat,在此基础上,我才能进行很小的修改和适配
Coding:提供了优质的托管平台
七牛云存储:提供了免费图片存储空间和服务
微博图床修复计划
V2EX
……

参考资料:
Ghost使用指南
主题开发指南
node.js官方网站
维基百科-markdown


Jas0ndyq敬上