1. 运行环境准备
安装 Node.js
使用 yum
命令安装 Node.js
yum install nodejs -y
使用 NPM 安装 PM2
通过 NPM
安装进程管理模块 PM2
。它是 Node.js 的一个进程管理模块,之后我们会使用它来管理我们的个人网站进程。
npm install pm2 -g
安装 MySQL
使用 yum 安装 MySQL:
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server -y
启动 MySQL 服务:
service mysqld restart
设置 MySQL 账户 root
密码:
/usr/bin/mysqladmin -u root password '4aE5aOii4Firekylin'
安装 Nginx
在 CentOS 上,可直接使用 yum
来安装 Nginx
yum install nginx -y
2. 安装并配置 Firekylin
安装 Firekylin
在服务器上下载安装包
wget https://firekylin.org/release/latest.tar.gz
解压安装包
tar zvxf latest.tar.gz
安装程序依赖
cd firekylin
npm install
复制项目下的 pm2_default.json
文件生成新文件 pm2.json
cp pm2_default.json pm2.json
修改 pm2.json
文件中的 cwd
配置值为项目的当前路径 /root/firekylin
:
{
"apps": [{
"name": "firekylin",
"script": "www/production.js",
"cwd": "/root/firekylin",
"exec_mode": "fork",
"max_memory_restart": "1G",
"autorestart": true,
"node_args": [],
"args": [],
"env": {
}
}]
}
然后通过以下命令启动项目
pm2 startOrReload pm2.json
Firekylin 已经启动成功,使用浏览器直接访问 http://yourip:8360/ 或 http://yourdomain.com:8360即可看到 Firekylin 的配置界面。
配置信息
配置过程输入参数如截图所示,其中数据库信息中的帐号字段设置为 root
,密码字段设置为 4aE5aOii4Firekylin
,数据库名字段设置为 firekylin
,主机字段设置为 127.0.0.1
,其他字段使用默认值;后台管理帐号中的帐号字段使用默认值 admin
,密码字段设置为 4aE5aOii4Admin
:
配置完成后可以通过后台管理帐号设置的帐号
和密码
登录博客管理后台,其值分别为 admin
和 4aE5aOii4Admin
,截图如下所示:
配置 Nginx
下面我们就配置 Nginx 使用域名访问我们的网站了。
复制项目下的 nginx_default.conf
为 nginx.conf
cp nginx_default.conf nginx.conf
修改 nginx.conf
文件:
server {
listen 80;
server_name www.yourdomain.com; #将 www.yourdomain.com 替换为之前注册并解析的域名
root /root/firekylin;
set $node_port 8360;
index index.js index.html index.htm;
location ^~ /.well-known/acme-challenge/ {
alias /root/firekylin/ssl/challenges/;
try_files $uri = 404;
}
location / {
proxy_http_version 1.1;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_pass http://127.0.0.1:$node_port$request_uri;
proxy_redirect off;
}
location = /development.js {
deny all;
}
location = /testing.js {
deny all;
}
location = /production.js {
deny all;
}
}
将 nginx.conf
文件软链到 nginx
配置目录下
ln -s /root/firekylin/nginx.conf /etc/nginx/conf.d/firekylin.conf
重启 Nginx
service nginx restart
3. 完成