Ghost是一款出色的开源博客网站,基于Node.js语言开发,使用MySQL、SQLite或PostgreSQL存储数据。本文介绍如何在Linux操作系统中,搭建用于生产环境的Ghost博客网站。
Ghost相比Wordpress,具有即时预览、简洁易用的优点:
Ghost官网不推荐使用root
用户直接进行操作,搭建Ghost博客前请首先创建新用户。
远程连接云服务器并登录,具体操作请参考登录Linux实例小节。
执行以下命令,创建新用户。
ghost
作为用户名,可能会与Ghost-CLI存在冲突,本文以ghostuser
为例。adduser ghostuser
回显如下,您需要设置ghostuser
的密码和其他信息,如不需要配置其他信息,可以按回车键,跳过配置。
Enter new UNIX password: Retype new UNIX password: passwd: password updated successfully Changing the user information for sxm Enter the new value, or press ENTER for the default Full Name []: Room Number []: Work Phone []: Home Phone []: Other []: Is the information correct? [Y/n]
执行以下命令,增加用户权限。usermod -aG sudo ghostuser
执行以下命令,切换为ghostuser
用户。su - ghostuser
回显如下,表示已切换为ghostuser
用户。
执行以下命令,更新软件包。
sudo apt-get update sudo apt-get upgrade -y
执行以下命令,安装Nginx。sudo apt-get install -y nginx
执行以下命令,查看Nginx版本。nginx -v
回显如下,表示安装成功。nginx version: nginx/1.14.0 (Ubuntu)
在本地浏览器中输入http://<ECS实例公网IP地址>/
访问Nginx。
回显如下,表示Nginx搭建成功。
apt install curl #安装curl工具 curl -sL https://deb.nodesource.com/setup_14.x | sudo -E bash sudo apt-get install -y nodejs
node -v
v14.18.1
sudo apt-get install -y mysql-server
sudo mysql
ghostdata
为例。CREATE DATABASE ghostdata;
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '输入root帐户密码';
\q
mysql -V
mysql Ver 14.14 Distrib 5.7.36, for Linux (x86_64) using EditLine wrapper
执行以下命令,安装Ghost-CLI命令行工具。sudo npm install ghost-cli@latest -g
执行以下命令,创建用于安装Ghost的文件夹。sudo mkdir -p /var/www/ghost
执行以下命令,配置ghostuser
用户权限。sudo chown ghostuser:ghostuser /var/www/ghost
执行以下命令,进入Ghost的文件夹。cd /var/www/ghost
执行以下命令,用Ghost-CLI安装Ghost。ghost install
回显如下,请依次完成配置。
vi config.production.json
命令进入配置文件完成操作。? Enter your blog URL: http://www.****.com #Ghost博客的真实域名 ? Enter your MySQL hostname: localhost #数据库的连接地址,本文中数据库在实例上,因此输入localhost即可 ? Enter your MySQL username: root #数据库的用户名,此处输入root ? Enter your MySQL password: [hidden] #数据库的密码,请输入root的密码 ? Enter your Ghost database name: ghostdata #Ghost使用的数据库,请输入第四步中配置建的名称
在本地浏览器中输入Ghost的域名,即可访问Ghost博客。
当用户通过 HTTP 协议访问您的网站,浏览器会提示用户连接不安全。建议您为网站启用 HTTPS 安全通信,这样能够保证用户与您的网站间的数据传输是加密的,可以有效防御网络劫持攻击、防止信息泄露等。
要启用 HTTPS,您需要在网站上部署 SSL 证书。您可以通过火山引擎证书中心申请免费的 SSL 证书。更多信息,请参见申请免费证书、下载与安装证书。