介绍
Ghost是一个伟大的新博客平台,简化了创建和运行博客的过程,它拥有干净的界面和易于使用的界面。
在本文中,我们将讨论使用一个VPS来托管多个博客的方法,我们将配置两个域名,以解决在同一系统上托管的Ghost的不同实例。
前提条件
本指南假定您正在使用一个新鲜的滴滴,该滴滴是用一个点击的Ghost图像配置的。 有关 如何在DigitalOcean上创建一个Ghost博客的说明,请点击此处。
这也假定你有两个单独的域名,你会使用的每个博客. 他们都应该指向你的VPS实例,你为你的鬼博客创建. 学习 如何正确配置你的域名,点击这里。
最后,我们假设您已登录到您的幽灵滴作为根。
停止运行服务
在我们开始之前,我们应该停止 Ghost 服务,以免出现问题:
1service ghost stop
这将确保我们不会移动由Ghost过程打开的文件。
我们想用nginx做同样的事情,只是为了安全:
1service nginx stop
更改 Nginx 配置
我们需要做的第一件事是调整 nginx 配置,目前 nginx (我们的 Web 服务器) 已配置为将所有请求传送到一个位置,我们需要根据我们的访问者试图访问的网站创建不同的路径。
我们将重新命名 Ghost 配置文件来描述我们的第一个域名,然后将其复制到代表我们的第二个域名的文件。
1cd /etc/nginx/sites-enabled
2mv ghost firstsite.conf
3cp firstsite.conf secondsite.conf
使用您选择的编辑器打开第一个网站的配置:
1nano firstsite.conf
更改server_name
参数以匹配您的第一个网站的域名. 正确获取此部分是很重要的,因为这是nginx唯一的办法知道哪个Ghost实例要传输控制。
1server_name firstsite.com
保存并关闭文件。
接下来,我们需要在我们的第二个网站配置上执行类似的操作。
1nano secondsite.conf
我们需要再次更改server_name
参数以匹配我们第二个网站的域名。
1server_name secondsite.com
现在,这种配置将将所有流量发送到同一个 node.js 实例,而不是将其分割到两个网站之间。
更改proxy_pass
参数. 我们需要将端口号更改为另一个号码. 它可以是任何不被其他进程使用的端口号码。
1proxy_pass http://localhost:2777
保存并关闭文件。
重启 nginx 通过键入:
1service nginx restart
更改幽灵配置
现在,我们需要在 Ghost 配置文件中反映我们的更改。
1cd /var/www
我们需要为我们的每个幽灵网站创建一个目录:
1mkdir firstsite.com
2mkdir secondsite.com
现在,我们需要将 Ghost 目录移动到每个新文件夹中:
1cp -r ghost firstsite.com
2mv ghost secondsite.com
现在,我们可以打开第一个网站的 Ghost 配置:
1nano /var/www/firstsite.com/ghost/config.js
尋找生產部分,尋找字符串 生產: {
. 更改 url
參數以匹配您的第一個網站的名稱:
1. . .
2production: {
3 url: 'http://firstsite.com'
4. . .
保存并关闭文件。
接下来,打开第二个网站的匹配文件:
1nano /var/www/secondsite.com/ghost/config.js
再次,尋找「生產: {」部分. 更改「url」參數以匹配第二個網站的域名:
1. . .
2production: {
3 url: 'http://secondsite.com'
4. . .
接下来,向下滚动到生产区块的服务器: {
部分. 更改端口
参数以匹配您在第二个网站的nginx配置中选择的代理端口的号码:
1port: '2777'
保存并关闭文件。
创建 Upstart 脚本
管理单独的 Ghost 安装最简单的方法是通过 Upstart 脚本,这将允许您单独启动、停止、重新启动并检查每个网站的状态。
目前,有系统 V init 脚本位于 /etc/init.d/ghost
. 如果您遵循此指南,请删除旧系统 V 脚本. 这将有助于避免混淆,并可以防止服务以错误的设置开始:
1rm /etc/init.d/ghost
我们将使用一个名为Upstart的替代系统V,因为它有一个更简单的语法。
转到 Upstart 保留其脚本的目录:
1cd /etc/init
创建您的第一个网站的文件:
1nano ghost-firstsite.conf
内部,我们将放置以下代码. 更改红色值以匹配您的第一个网站的配置:
1# ghost-firstsite
2
3start on startup
4
5script
6 cd /var/www/firstsite.com/ghost
7 npm start --production
8end script
保存并关闭文件。
我们将通过复制我们刚刚创建的网站来创建第二个网站的配置文件:
1cp ghost-firstsite.conf ghost-secondsite.conf
打开新文件,并调整红色值以匹配第二个网站:
1# ghost-secondsite
2
3start on startup
4
5script
6 cd /var/www/secondsite.com/ghost
7 npm start --production
8end script
保存并关闭文件。
现在,您可以通过键入将每个网站带到网上:
1service ghost-firstsite start
2service ghost-secondsite start
如果您访问您的每个域,您应该看到 Ghost 博客登陆页面。
创建您的用户帐户并通过访问登录:
1firstsite.com/ghost/signup
将不同的内容添加到每个网站,以验证它们是否真正分开。
结论
您现在应该有两个单独的博客从一个滴滴中提供服务. 您可以扩展此技术以服务额外的网站,如您的资源允许。
查看我们的其他文章,了解 如何更改主题和设置, 如何配置电子邮件和测试配置更改和 如何管理内容。