本地https快速解决方案——mkcert

参考:https://www.jianshu.com/p/7cb5c2cffaaa

一:安装Homebrew

(一)git获取

为了保持整洁,克隆LinuxBrew成用户的主目录中的隐藏目录:

git clone https://github.com/Homebrew/linuxbrew.git ~/.linuxbrew

(二)修改环境变量~/.bashrc

export PATH="$HOME/.linuxbrew/bin:$PATH"
export LD_LIBRARY_PATH="$HOME/.linuxbrew/lib:$LD_LIBRARY_PATH"

export HOMEBREW_BOTTLE_DOMAIN="https://mirrors.tuna.tsinghua.edu.cn/homebrew-bottles"  #更新brew源

使得修改生效:

source ~/.bashrc

(三)更新brew

brew update

二:安装mkcert

(一)安装mkcert

brew install mkcert

本地https快速解决方案——mkcert

(二)测试mkcert

本地https快速解决方案——mkcert

三:安装证书

(一)生成根证书  

mkcert -install

(二)本地新建一个文件夹,并进入到该目录(用于存储证书)

mkdir ca
cd ca

本地https快速解决方案——mkcert

也可不用放在项目中,通用的解决方案是放在磁盘中,比如用户目录(/User) 

(三)生成所需域名对应的本地证书,比如learn.webrtc.com

1.修改hosts文件 /etc/hosts

127.0.0.1   learn.webrtc.com

2.生成所需域名对应的本地证书

mkcert learn.webrtc.com

本地https快速解决方案——mkcert

命令执行完之后,在该文件下会生成 learn.webrtc.com-key.pem (私钥)和 learn.webrtc.com.pem (证书)两个文件,也就是https配置需要的文件。

(四)开始使用nodejs实现本地https服务

'use strict'

var https = require("https");        //引入https库
var fs = require("fs");                //文件系统,用来读取证书

var options = {
    key : fs.readFileSync("./ca/learn.webrtc.com-key.pem"),            //同步读取文件key
    cert: fs.readFileSync("./ca/learn.webrtc.com.pem"),                //同步读取文件证书
};

var app = https.createServer(options,function(request,response){
    response.writeHead(200,{
        'Content-Type':"text/plain;charset=utf-8"
    });
    response.write("Hello World\n");                //页面输出
    response.end();                                    //页面结束
}).listen(8080,'0.0.0.0');

(五)服务启动验证

1.启动https服务

node 02_server_https.js

本地https快速解决方案——mkcert

2.访问https服务

https://learn.webrtc.com:8080/

本地https快速解决方案——mkcert

使用openssl和nodejs搭建本地https服务

 

上一篇:TSINGSEE青犀视频开发WebRTC视频推流播放平台前端获取视频流列表错误是什么原因?


下一篇:2021-02-01