项目上线相关配置
1. 通过 node 创建 web 服务器
创建 node 项目:xxxx.serve 文件夹 ,并初始化一下:npm i -y
并安装 express:npm i express -s
将打包好的 dist 文件夹 复制到 xxxx.serve 文件夹 并建立入口文件app.js 创建如下代码:
const express = require('express')
// 创建 web 服务器
const app = express()
// 托管静态资源
app.use(express.static('./dist'))
// 启动 web 服务器
app.listen(80, () => {
console.log('web server running at http://127.0.0.1')
})
通过 express 快速创建 web 服务器,将 vue 打包生成的 dist 文件夹,托管为静态资源即可。
2. 开启 gzip 配置。
使用 gzip 可以减小文件体积,使传输速度更快。 npm install compression -S // 安装相应包
// 导入包
const compression = require('compression');
// 启用中间件
app.use(compression());
3. 配置 HTTPS 服务
(HTTP 协议传输的数据都是明文,不安全, 采用 HTTPS 协议对传输的数据进行了加密处理)
申请 SSL 证书(https://freessl.org)
① 进入 https://freessl.cn/ 官网,输入要申请的域名并选择品牌。
② 输入自己的邮箱并选择相关选项。
③ 验证 DNS(在域名管理后台添加 TXT 记录)。
④ 验证通过之后,下载 SSL 证书( full_chain.pem 公钥;private.key 私钥)。
在后台项目中导入证书
把生成的公钥和私钥复制到xxxx.serve 文件夹里,并在 app.js 入口文件中加入以下代码:
const https = require('https');
const fs = require('fs');
const options = {
cert: fs.readFileSync('./full_chain.pem'),
key: fs.readFileSync('./private.key')
}
https.createServer(options, app).listen(443);
关闭本地服务 80 端口
4. 使用 pm2 管理应用
① 在服务器中安装 pm2:npm i pm2 -g
② 启动项目:pm2 start 脚本 --name 自定义名称
③ 查看运行项目:pm2 ls
④ 重启项目:pm2 restart 自定义名称
⑤ 停止项目:pm2 stop 自定义名称
⑥ 删除项目:pm2 delete 自定义名称