Linode是一个主机商专业提供XEN虚拟vps了,有不少国内朋友使用都觉得非常的不错,下文我们来看看Linode XEN虚拟vps安装配置Ghost方法.
我的 vps 情况:
操作系统 – CentOS 7 64 位,web 服务器软件 – Apache,Ghost1 基于 Node.js,它本身自带 web 服务器,不需要 Apache.
安装 Ghost
主要参照 Ghost 官方帮助2
下载 Ghost:$ curl -L https://ghost.org/zip/ghost-latest.zip -o ghost.zip
解压 Ghost:$ unzip -uo ghost.zip -d ghost
安装 Ghost:
- $cdghost
- $npminstall--production
启动 Ghost:$ npm start --production
现在,你可以在 vps 上通过 127.0.0.1:2368 路径访问到 Ghost 博客了.
配置 Apache 与 Ghost,当然,你的目的可不是在 vps 上访问 Ghost,而是通过域名访问 Ghost,ghost 目录下有一个 config.example.js 文件,用于配置相关信息3,比如域名,端口等.
执行以下操作前,请先确保你在 DNS 服务器上把域名绑定到 vps 的 ip 地址.
复制一个 config.js:
- $cdghost
- $cpconfig.example.jsconfig.js
修改 config.js:将 config.js 里 production 部分里的 url: 'http://my-ghost-blog.com' 改为 url: 'http://phpfensi.com',这是我要使用的域名.
重启 Ghost:按 CTRL - C 关闭 Ghost,再执行 npm start --production 启动它,这时你能看到如下信息:
- Migrations:Uptodateatversion003
- Ghostisrunning...
- Yourblogisnowavailableonhttp://phpfensi.com
- Ctrl+Ctoshutdown1
但这信息并不意味着我们能访问到 Ghost 了,因为 11cn.net 域名访问的是 80 端口,在这个端口上监听的是 Apache 而不是 Node.js – 它是在 2368 端口监听着.
所以我们还需要配置 Apache,打开 /etc/httpd/conf.d/vhost.conf 文件,CentOS 系统的情况,添加如下内容:
- <VirtualHost*:80>
- ServerNamewww.phpfensi.com
- ServerAliasphpfensi.com
- ProxyPreserveHoston
- ProxyPass/http://localhost:2368/
- ProxyPassReverse/http://localhost:2368/
- </VirtualHost>
重启 apache:$ sudo service httpd restart
这样,Apache 充当代理,会把它监听到的流量转发给 Node.js 监听的端口,这时访问 http://phpfensi.com,我们就能打开 Ghost 博客了.