首页 电脑 建站推广 查看内容

教你快速搭建博客系统 Ghost:Linux 任务驱动

2019-1-31 02:47 |来自: 互联网 1449 0

摘要: 0. 前言「博客」真的是这个时代最好的产物之一,互联网拉开了人们之间的距离,而博客的诞生却又拉近的人们的距离。想在互联网中,表达自己的想法,那么就去写博客吧;刚开始学习 Web开发,最好的实战项目就是写一个 ...
关键词:Migrations Creating table Ghost 命令 sudo 服务器 域名 博客 permissions

0. 前言

「博客」真的是这个时代最好的产物之一,互联网拉开了人们之间的距离,而博客的诞生却又拉近的人们的距离。想在互联网中,表达自己的想法,那么就去写博客吧;刚开始学习 Web开发,最好的实战项目就是写一个博客系统吧;学习 Linux 运维,记了那么多的命令,来,检验一下,给我搭个开源博客系统吧。

最流行的开源博客平台,有WordPress和Ghost。而Ghost应该是这个时代最流行的开源博客系统,为什么说是这个时代最流行呢?因为它是基于 Node 开发的。相比于 PHP 开发的WordPress,它可显得年轻多了,年轻的好处就是时尚,轻量,有活力。

好了,废话也不多说了,记录一下在 Ubuntu 下,搭建 Ghost 博客系统的经历,希望对你有帮助。

1. 准备工作

拿到一个台Ubuntu服务器,准备工作还是比较多的,好在前面两篇文章,我已经把该准备的都准备好了。

一些必要的环境以及软件,都已经安装完成。例如:Node,Wget,Git等。代理服务器Nginx也准备妥当,这里不再赘述了。

2. 安装Ghost

这是我所见过最简单的安装方式了,打开下载链接,哦,不对,服务器上是文本界面,可没办法打开下载链接。好在,我们下载了Wget呀。

wget http://dl.ghostchina.com/Ghost-0.7.4-zh-full.zip

该链接是最新的 Ghost 中文集成版,所谓集成版,就是把node_modules里的一些依赖包,全部包含在内了。这样可是方便极了,解压就可以直接用了。

# 解压命令
unzip Ghost-0.7.4-zh-full.zip -d Ghost/

解压完,就算安装完了。Linux 上的软件安装就是这样简单粗暴,放好地方就可以了。

ps. 如果你不喜欢使用wget命令,你可以通过其他方式,只要把Ghost压缩包导入服务器上就行了。例如,使用sftp的一些工具。

3. 启动服务

安装完了,进入 Ghost 文件夹,执行启动命令:

sudo npm start

如果 duang,报错了(没有什么事情是一帆风顺),如下图:

好在这个问题,一眼看明白了,Node 的版本问题,更好在,这个问题特别好解决,安装模块n,n 是一个管理 Node 版本的模块,安装命令:

sudo npm i n -g

一定要全局安装,安装好了之后,运行命令安装 4.2.0 版本:

sudo n 4.2.0

duang,又报错了,没事,Linux就贵在折腾。

为啥输入命令 n 可以执行,而 sudo n 就找不到命令呢?问题肯定出在 sudo 上,sudo 的配置文件是 /etc/sudoers,使用 VIM 打开看看:

...
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
...

看到这句,差不多也猜出来了,这个应该是 sudo 的命令范围,尝试在后面加上命令 n 的路径,修改如下:

...
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin:/usr/local/node/bin"
...

在执行命令 sudo n 4.2.0,顺利安装,并切换 Node 版本到 4.2.0。接着执行 sudo npm start,不出意外,显示如下:

�7�4 Ghost npm start
> [email protected] start /Users/lupeng/Desktop/Ghost
> node index
Migrations: Database initialisation required for version 004
Migrations: Creating tables...
Migrations: Creating table: posts
Migrations: Creating table: users
Migrations: Creating table: roles
Migrations: Creating table: roles_users
Migrations: Creating table: permissions
Migrations: Creating table: permissions_users
Migrations: Creating table: permissions_roles
Migrations: Creating table: permissions_apps
Migrations: Creating table: settings
Migrations: Creating table: tags
Migrations: Creating table: posts_tags
Migrations: Creating table: apps
Migrations: Creating table: app_settings
Migrations: Creating table: app_fields
Migrations: Creating table: clients
Migrations: Creating table: client_trusted_domains
Migrations: Creating table: accesstokens
Migrations: Creating table: refreshtokens
Migrations: Populating fixtures
Migrations: Populating permissions
Migrations: Creating owner
Migrations: Populating default settings
Migrations: Complete
Ghost is running in development...
Listening on 127.0.0.1:2368
Url configured as: http://localhost:2368
Ctrl+C to shut down

初次运行,初始化数据库,启动服务,服务端口为 2368,通过 http://localhost:2368 就可以访问服务了。哦,不对,服务器端没有浏览器呀,不过可以通过公网IP地址访问。

4. Nginx 配置

历经各种曲折,终于启动了 Ghost 服务,接下来是最后一步,配置域名访问。在配置域名之前,你需要有一个已经备案过的域名,且域名解析到服务器公网地址上,到这一步,其实就可以通过域名访问了。

通常情况下,服务端的请求,最好通过代理服务器进行转发,这里选择了 Nginx。前面介绍过 Nginx 的安装与配置,这里就简单了。打开 Nginx 配置文件:

server{
 listen 80;
 server_name www.yourdomain.com;
 location / {
 proxy_pass http://127.0.0.1:2368;
 }
}

server_name 处为你的域名,proxy_pass 表示请求将转给 Ghost 服务,最后重载 Nginx,sudo nginx -s reload,一切准备就绪,如不出意外,直接访问域名,将显示前台页面如下:

访问 http://www.yourdomain.com/ghost,将显示后台首页,如下图:

完,祝玩得开心。

本文出处: https://www.toutiao.com/a6652302404907696654/
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系 [邮箱地址] 删除

路过

雷人

握手

鲜花

鸡蛋

最新评论

返回顶部