持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第18天,点击查看活动详情
最近在学一webrtc,其中对于视频连接的时候需要在https下才能进行,否则就只能本地的localhost或者用192.0.0.1来进行访问,既然涉及到了视频通信,那当然还是两台机子来进行模拟更加的真实,所以就试着配置一下局域网的https。
准备环境
这里我们需要安装node,使用到node服务器,为了编写服务器的方便我们还要使用express这个框架,node环境的配置在这里就不说了,接下来就是要配置https需要的证书,下载链接如下
证书
如果我们的系统是64位的那么我们就安装黑色框这个,如果是32位的就安装红色框的这个。
点击进行安转,然后记住以下的这个目录
一路next就可以了。
打开我们刚才的安装目录
找到start这个批处理文件,以管理员身份打开
依次输入以下命令
cd C:\
私钥生成
openssl genrsa -out privkey.key 2048
证书生成
openssl req -new -x509 -key privkey.key -out cacert.pem -days 1095
接下来所有的操作你都可以选择默认的,如果你想设置域名为你的WiFi域名,那么你可以在common Name那里输入你的IP;
生成后我们就可以在我们的C盘看到我们生成的privkey.key和cacert.pem两个文件,接下来我们就可以用node来启动一个https的服务器了。
服务器代码
var express = require("express");
var app = express();
const fs = require("fs");
let sslOptions = {
key: fs.readFileSync('C:/privkey.key'), //里面的文件替换成你生成的私钥
cert: fs.readFileSync('C:/cacert.pem'), //里面的文件替换成你生成的证书
};
const https = require("https").createServer(sslOptions, app);
https.listen(443, () => {
console.log("https listen on");
});