inux下安装Ghost博客平台
Ghost目前需要Node.js 0.10.X版本和npm 0.25支持,由于这两个软件包的版本要求比较严格,不要一味的求新,否则安装会出问题
一、安装和配置Ghost
1.安装Nodejs:
curl --silent --location https://deb.nodesource.com/setup_0.10 | bash -
apt-get install --yes nodejs
2.把npm升级为2.5.0
npm install npm@2.5.0 -g
3.建立文件夹目录
mkdir -p /home/www/
4.下载ghost安装包并解压
cd /home
curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip
unzip -uo ghost.zip -d www
cd www
5.安装Ghost
npm install --production
复制一份默认的配置文件config.js(如有需要,可对此文件进行进一步优化操作,本文此处暂可不更改)
cp config.example.js config.js
安装好的ghost的端口为2368,已经可以进行本地的浏览和编辑了,但是,为了获得更好的网络访问体验,还需要使用Nginx进行代理。
6.安装Nginx
apt-get install nginx
cd /etc/nginx/
rm sites-enabled/default
vi /etc/nginx/sites-available/ghost
7.配置Nginx规则,只需要修改“your_domain.tld”为自己的域名
server {
listen [::]:80;
server_name your_domain.tld;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_pass http://127.0.0.1:2368;
}
}
8.使Nginx规则生效
ln -s /etc/nginx/sites-available/ghost /etc/nginx/sites-enabled/ghost
9.重启Nginx
service nginx restart
10.为了方便我们日常的管理,可以将ghost注册为Linux的服务(将Ghost添加为init.d),这样也可以让ghost安静地在后台运行。
sudo curl https://raw.githubusercontent.com/TryGhost/Ghost-Config/master/init.d/ghost \
-o /etc/init.d/ghost
vi /etc/init.d/ghost
把GHOST_ROOT后面的目录改为自己的Ghost目录,本文为/home/www
11.由于上面的脚本默认为系统的ghost用户运行,因此,我们还需要创建用户,并赋予他相应的权限。
useradd -r ghost -U
chown -R ghost:ghost /home/www
chmod 755 /etc/init.d/ghost
经过以上设置,即可通过一般的service命令进行管理ghost的操作了
service ghost start
service ghost stop
service ghost restart
service ghost status
12.设置开机启动
sudo update-rc.d ghost defaults
$ sudo update-rc.d ghost enable
13.访问http://域名/ghost/setup/one/,经过简单几步设置和创建账户,安装就完成了。
二、发送邮件设置:
这里采用Mailgun提供的SMTP服务,可以省去不少不必要的麻烦,另外,Mailgun提供的每月10,000封邮件的额度完全满足一般个人博客的需求
1.访问如下网址,注册账号后,点击账户内部的sandboxXXXX.mailgun.org的域名,点进去可以看到API Key的字符串,复制下来,在下面的网址上输入
https://ghost.mailgun.com/
2.输入博客域名
3.右边会生成完整的Ghost的配置文件,复制其中的mail字段
4.粘贴到Ghost配置文件/home/www/config.js相应的位置上。
5.重启Ghost生效
service ghost restart