为什么要启用 HTTPS 服务?
传统的 HTTP 协议传输的数据都是明文,不安全
采用 HTTPS 协议对传输的数据进行了加密处理,可以防止数据被中间人窃取,使用更安全
申请 SSL 证书(https://freessl.org)
进入 https://freessl.cn/ 官网,输入要申请的域名并选择品牌。
输入自己的邮箱并选择相关选项。
验证 DNS(在域名管理后台添加 TXT 记录)。
验证通过之后,下载 SSL 证书( full_chain.pem 公钥;private.key 私钥)。
在后台项目中导入证书
Javascript
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);
此时 app.js 配置代码如下:
Javascript
const express = require('express')
// 导入包
const compression = require('compression')
const https = require('https')
const fs = require('fs')
// 创建 web 服务器
const app = express()
const options = {
cert: fs.readFileSync('./full_chain.pem'),
key: fs.readFileSync('./private.key')
}
// 启用中间件
app.use(compression());
// 托管静态资源
app.use(express.static('./dist'))
// 启动 web 服务器
// app.listen(80, () => {
// console.log('web server running at http://127.0.0.1')
// })
https.createServer(options, app).listen(443);