项目上线
一、创建web服务器
1通过node创建web服务器
2开启gzip配置
3配置https服务
4使用pm2管理应用
1通过node创建web服务器
创建node项目,并安装express ,通过express快速创建web服务器,将vue打包生成的dist文件夹,托管为静态资源即可,关键代码如下:
1创建新的文件夹 ,并打开
2初始化包管理配置文件: package.json ——npm init -y
3添加第三方的包: npm i express -S
4把dist复制到新文件夹中
5新建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') })
二、开启gzip配置
使用gzip可以减小文件体积,使传输速度更快。
可以通过服务器端使用Express做gzip压缩。配置如下:
1安装相应包
npm install compression -D (或-S)
2导入包
const compression = require('compression');
3启用中间件
//一定要把这一行代码,写到静态资源托管之前
app.use(compression());
三、配置HTTPS服务
为什么要启用HTTPS服务?
传统的HTTP协议传输的数据都是明文,不安全
采用HTTPS协议对传输的数据进行了加密处理,可以防止数据被中间人窃取,使用更安全。
配置HTTPS服务
申请SSL证书(https://freessl.org)
1进入https://freessl.cn/官网,输入要申请的域名并选择品牌
2输入自己的邮箱并选择相关选项。
3验证DNS(在域名管理后台添加TXT记录)
4验证通过之后,下载SSL证书(full_chain.pem公钥;private.key私钥)
在后台项目中导入证书
const https = reuqire('https') const fs = require('fs') const options = { cert: fs.readFileSync('./full_chain.pem'), key: fs.readFileSync('./private.key'), } https.createServer(options, app).listen(443)
//默认情况下 http协议为80端口,https协议为443端口
四、使用pm2管理应用 https://www.jianshu.com/p/e15fd72727fe
pm2是一个进程管理工具,可以用它来管理你的node进程,并查看node进程的状态,当然也支持性能监控,进程守护,负载均衡等功能
1在服务器中安装pm2:npm i pm2 -g
2启动项目:pm2 start 脚本 --name 自定义名称
3查看运行项目:pm2 ls
4重启项目:pm2 restart 自定义名称
5停止项目:pm2 stop 自定义名称(或序号)
6删除项目:pm2 delete 自定义名称(或序号)