前面详细的讲述了,在 Node.js 4.x 环境下安装 Ghost 博客平台的准备工作,包括配置、系统的选择,组建的选择等等,如果没有看过的同学,一定要去看一下! 门:《Ghost 的高可用安装 准备篇》

下载、准备

这里我们推荐安装的是由王赛翻译的 Ghost 中文版(非官方,因为官方也没有出中文版。)因为,它不仅被翻译了,而且其去除了像谷歌字体这样的会拖慢速度的内容;集成 node_modules 免去了大陆主机无法运行的问题。

下载 http://dl.ghostchina.com/Ghost-0.7.4-zh-full.zip 到相应目录,例如我设置的是 /data/wwwroot/mf8

mkdir -p /data/wwwroot/mf8/ //如果没有就要创建
cd /data/wwwroot/mf8/  //进入目录
wget http://dl.ghostchina.com/Ghost-0.7.4-zh-full.zip  //下载中文版
unzip Ghost-0.7.4-zh-full.zip //解压
npm install --production //跑跑试试,4.x 版本可能会提醒你兼容问题,其实没关系的,不理会即可

然后打开 http://yourdomain:2368 看看能不能访问

编辑 config

我们要修改 config.js 文件,如果没有就讲 config.example.js 改了,

cp config.example.js config.js

一,修改域名

url: 'http://my-ghost-blog.com', 修改成 url: 'http://你的域名',

如果使用了 ssl,且不想全站的话,再添加:urlSSL: https://s你的域名

二,修改,邮箱

mail: {}, 修改成

        mail: {transport: 'SMTP',from: '发件人地址',options: {host: 'smtp 邮件发送服务器',secureConnection: true, // 填 true 则使用加密传输.false 则不port: 465, //如果上面填 true,这里填465;如果上面填 false,这里填 25auth: {user: '邮箱地址',pass: 'A邮箱密码'}}},

如果你不想多用户合作,其实不设置也没关系。

三,修改数据库

如果,你想使用 sqlite 的话,则不用改,如果使用 pg 或者 MariaDB(Mysql) 则改。

        database: {client: 'sqlite3',connection: {filename: path.join(__dirname, '/content/data/ghost.db')},

MariaDB(Mysql)

        database: {client: 'mysql', // MariaDB 也填这个connection: {host     : 'localhost', //如果使用 RDS 等云数据库则修改为连接地址user     : '用户名称',password : '用户密码',database : '数据库名称',charset  : 'utf8' //字符集},debug: false},

这里的话,默认连接次数是 min: 2, max: 10,如果需要改动,则添加:


pool: {min: 2,max: 20}

一只保持连接,则设置 min: 0

PostgreSQL

database: {client: 'pg',connection: {host     : 'localhost',user     : '用户名称',password : '用户密码',database : '数据库名称',charset  : 'utf8' //字符集//port     : '如果要设置端口,请在这里填写'}},

四,设置端口

        server: {host: '127.0.0.1', //部分配置可能需要设置成 0.0.0.0port: '2368' //端口,如果要安装多个博客,那就要设置多个端口了。},

五,设置附件

内容较多,而且 Ghostchina 的设置教程也都失效了,有空我单独写一篇介绍一下,会点英语的都看的懂的。

如果你还要设置更多,请参考官方文档:http://support.ghost.org/config/

运行

    npm install --productionnpm start

再打开 http://yourdomain:2368 就能跑气来了,如果你发现你修改的参数并没有生效,则可能是因为运行在 development 模式,而非 production
所以,我们需要修改 /core/index.js 文件,将

    process.env.NODE_ENV = process.env.NODE_ENV || 'development';

修改为:

process.env.NODE_ENV = process.env.NODE_ENV || 'production';

守护进程

当你将 SSH 关闭,或者 Ctrl + c 后,会发现网站就打不开了,因此这里我们需要来维持 Ghost 的运行。

守护进程一般用如下软件:

Upstart:只能在开机启动,无法守护进程

PM2:可开机自启动,程序崩溃自动重新打开,可监控运行
Supervisor:可开机自启动,程序崩溃自动重新打开
Forever:不能开机自启动

所以,这里我们选择 Supervisor 或 PM2,MF8.biz 使用后者。

Supervisor

Debian/Ubuntu: apt-get install supervisor
Fedora/RHEL: yum installsupervisor
其他大多数发行版: easy_install supervisor

确保使用service supervisor start启动了 supervisor ,然后为ghost创建安装脚本, vi /etc/supervisor/conf.d/ghost.conf 输入以下内容,记得替换{ghost_path}

注: {ghost_path} 就是你安装 Ghost 的路径,例如米饭粑的 Ghost 在/data/wwwroot/mf8 那么路径就是这个。

[program:ghost]
command = node {ghost_path}/index.js
directory = {ghost_path}/ghost
user = ghost
autostart = true
autorestart = true
stdout_logfile = /var/log/supervisor/ghost.log
stderr_logfile = /var/log/supervisor/ghost_err.log
environment = NODE_ENV="production"

PM2

安装

npm install pm2 大陆主机安装了 cnpm,就用 cnpm install pm2

在你的 ghost 目录,运行,

NODE_ENV=production pm2 start index.js --name "ghost"

开机自启动,

pm2 startup ubuntu //可以换成,centos、debian

保存,

pm2 save

Nginx 反代

在对应域名的 conf 中,添加

    location / {proxy_set_header   X-Real-IP $remote_addr;proxy_set_header   Host      $http_host;proxy_pass         http://127.0.0.1:2368;}

就可以反代了,如果是 https,则是:

    location ~ ^/(?:ghost|signout) {proxy_set_header X-Real-IP $remote_addr;proxy_set_header Host $http_host;proxy_pass http://127.0.0.1:2368;add_header Cache-Control "no-cache, private, no-store, must-revalidate, max-stale=0, post-check=0, pre-check=0";proxy_set_header X-Forwarded-Proto https;}

Ghost 的高可用安装 安装篇相关推荐

  1. Windows2012R2 Hyper-v3.0 高可用群集安装及配置(Live Migration)

    Windows2012R2 高可用群集安装及配置(Live Migration) 近期闲着没事做了一些高可用相关的实验分享给大家,上一篇我们介绍了SQL Server2014的高可用,今天主要介绍一下 ...

  2. 【kubernetes】k8s集群高可用部署安装和概念详细说明【含离线部署】,客户端连接haproxy访问高可用流程

    文章目录 说明 高可用原理 K8S多master节点架构图 测试环境说明 部署高可用 安装包准备[可选] 高可用架构说明 配置haproxy 说明[必看] 安装haproxy 编辑配置文件 配置etc ...

  3. 高可用集群篇(五)-- K8S部署微服务

    高可用集群篇(五)-- K8S部署微服务 一.K8S有状态服务 1.1 什么是有状态服务 1.2 k8s部署MySQL 1.2.1 创建MySQL主从服务 1.2.2 测试主从配置 1.2.3 k8s ...

  4. 谷粒商城电商项目 高可用集群篇

    更多视频,JAVA收徒 QQ:987115885谷粒商城电商项目 高可用集群篇339.k8s-简介.mp4340.k8s-架构原理&核心概念.mp4341.k8s-集群搭建-环境准备.mp43 ...

  5. keepalived高可用解决脑裂,nginx高可用配置详细篇

    第一章 keepalived介绍 keepalived软件起初是专为LVS负载均衡软件设计的,用来管理并监控LVS集群系统中各个服务节点状态,后来又加入了可以实现高可用的VRRP功能.此,keepal ...

  6. Nginx从安装到高可用,一篇搞定!

    一.Nginx安装 1.去官网http://nginx.org/下载对应的nginx包,推荐使用稳定版本 2.上传nginx到linux系统 3.安装依赖环境 (1)安装gcc环境 yum insta ...

  7. Nginx 基本概念(反向代理、动静分离、负载均衡、高可用)、安装配置(JDK\Tomcat\Nginx\Keepalived)、配置实例效果

    这篇文章将先阐述Nginx相关概念,然后介绍Nginx相关环境的安装配置过程(包括Linux下JDK\Tomcat的安装,都是自己动手操作的记录),及反向代理.负载均衡.动静分离.高可用的配置及测试过 ...

  8. 高可用—Keepalived安装部署使用详解

    关注微信公众号:CodingTechWork,一起学习进步. keepalived介绍   keepalived是基于VRRP(Virtual Router Redundancy Protocol , ...

  9. mysql MHA高可用架构安装

    是什么(是一个软件) MHA(Master High Availability)是MySQL高可用性环境下故障切换和主从提升的高可用软件.在MySQL故障切换过程中,MHA能做到在0~30秒之内自动完 ...

最新文章

  1. 武汉工程大学认识实习报告计算机,武汉工程大学化工认识实习报告
  2. Java开发命名规范总结
  3. DPM 2007升级到SP1的方法
  4. 打通docker api
  5. python怎么输出小数部分_python 输出小数控制
  6. Oracle入门(十二A)之数据类型
  7. matlab多缝夫琅禾费,常见的多缝夫琅禾费衍射.ppt
  8. jekyll bootstrap更改主题theme
  9. 一个简单的 javascript 中的正则表达式例子
  10. 【qt+opencv】实现人脸识别打卡系统2.0
  11. 不想荒废你的大学生活吧?看看牛人是怎样成为电子学霸的!
  12. PDFObject的使用(转)
  13. 向日蔡远程连接锁定计算机,如何远程连接电脑?向日葵远程工具告诉你?
  14. RTX3060(30系显卡)Windows10部署Pytorch深度学习环境步骤与心得
  15. 基本类型和包装类型的区别详解
  16. adaboost训练 之 弱分类器训练原理
  17. 搜狗输入法简约而美的皮肤推荐
  18. android中 cdf文件的作用是什么意思,行情艰难,Android初中高级面试题,附详细答案...
  19. 情态动词学习笔记(4) 基本用法:建议和忠告
  20. java左侧栏怎么打开_eclipse左侧项目栏不见了怎么解决

热门文章

  1. 根据IP进行城市定位
  2. 图形学(1)概论及一些基础知识
  3. 小说更新太慢怎么办_小说:圣墟(挺好看的一部小说,现在更新非常慢)
  4. 将SQL server2019数据库部署在虚拟机上
  5. 武汉地铁软件测试自学,武汉影视节目制作培训(视频剪辑是否好找工作)
  6. 五分钟学Java:为什么会发生ArrayIndexOutOfBoundsException?
  7. css中按钮变色,CSS控制按钮变色(有图有真相)
  8. 问题解决:[/usr/lib/systemd/system/etcd.service:6] Missing ‘=‘.
  9. 程序人生文章汇总(持续更新,方便查阅)
  10. 2023西湖论剑wirteup