Linux VPS安装 Ghost博客系统0.72

安装node.js环境

包安装Debian
1
2
3
$ sudo apt-get install curl
$ curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -
$ sudo apt-get install -y nodejs

验证node.js环境

1
2
$ node -v
$ npm -v

参考:https://nodejs.org/en/download/package-manager/#debian-and-ubuntu-based-linux-distributions

下载 Ghost 的最新版:

1
$ curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip

使用以下命令解压存档:

1
2
$ unzip -uo ghost.zip -d ghost
$ cd ./ghost

输入以下命令安装 Ghost :

1
$ npm install --production

实验开启 Ghost:

在 npm 结束安装后,输入以下命令让 Ghost 以开发模式启动:

1
$ npm start

Ghost 将会运行在 127.0.0.1(你的IP):2368
你可以在 config.js 中修改IP地址和端口
在浏览器中,访问 127.0.0.1(你的IP):2368 即可查看最新搭建的 Ghost 博客
访问 127.0.0.1(你的IP):2368/ghost 并且设置管理员用户并登陆 Ghost 管理员

配置config.js请参考:http://support.ghost.org/config/

让 Ghost 一直运行

前面提到的启动 Ghost 使用 npm start 命令。这是一个在开发模式下启动和测试的不错的选择,但是通过这种命令行启动的方式有个缺点,即当你关闭终端窗口或者从 SSH 断开连接时,Ghost 就停止了。为了防止 Ghost 停止工作,有两种方式解决这个问题。

Forever (https://npmjs.org/package/forever)

你可以使用 forever 以后台任务运行 Ghost 。forever 将会按照 Ghost 的配置,当进程 crash 后重启 Ghost。

通过 npm install forever -g 安装 forever
为了让 forever 从 Ghost 安装目录运行,输入 NODE_ENV=production forever start index.js
通过 forever stop index.js 或者 forever stop all停止 Ghost
通过 forever list 检查 Ghost 当前是否正在运行

配置 Ghost 域名

如果你已经让 Ghost 一直运行了,你也可以设置一个代理服务器让你的博客可以使用域名访问。以下的示例假定你的操作系统是 Ubuntu 12.04 ,使用 Nginx 作为你的Web服务器,已经使用以上任意一种方法让 Ghost 在后台运行。

安装 nginx
1
$ sudo apt-get install nginx

这个命令将会安装nginx并且设定好所有必需的目录和基础配置。

配置你的站点

在 /etc/nginx/sites-available 创建一个 ghost.conf 文件
使用文本编辑器打开这个文件 (e.g. sudo nano /etc/nginx/sites-available/ghost.conf) 把以下内容复制进这个文件

1
2
3
4
5
6
7
8
9
10
11
12
server {
listen 80;
server_name example.com;
access_log /var/log/nginx/example.com.tld.log; # if you want logging
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2368;
# proxy_redirect off;
}
}

将 server_name 的值改为你的域名

把你的配置文件软链接到 sites-enabled 文件夹下:

1
$ sudo ln -s /etc/nginx/sites-available/ghost.conf /etc/nginx/sites-enabled/ghost.conf

重启 nginx

1
$ sudo service nginx restart

使用你的站点

使用:你的域名/ghost 管理站点。
使用:你的域名 访问站点。

优化 ghost 配置

配置文件是 ghost 程序目录的 config.js,我们来修改下 production 字段的配置。

根目录网址:配置url为你自己的url,不然会导致路径出错;
增加 privacy字段,禁用后台的 google fonts 和 Gravatar (这两个国内被封):

1
2
3
4
5
6
7
privacy: {
// useUpdateCheck: false,
useGoogleFonts: false,
useGravatar: false,
// useRpcPing: false,
// useStructuredData: false
}

要禁用前台的 Google Fonts,只能手动修改模版中的 css 文件引用了。对于默认的 capser 主题,在 content/themes/capser/ 目录的 default.hbs 中。

配置邮件在 mail 字段中。官方文档 中只介绍了使用 mailgun 等服务商的方式http://support.ghost.org/mail,如果是已经有了自己的邮件服务,可采用以下配置(以QQ域名邮箱为例,注意替换邮箱和密码):

1
2
3
4
5
6
7
8
9
10
11
12
13
mail:{
transport: 'SMTP',
from: 'Your Name <yourname@yourhost.com>',
options: {
host:'smtp.qq.com',
secureConnection: false,
port:25,
auth: {
user: 'your_email_addr',
pass: 'your_email_password'
}
}
},