Nodejs在局域网配置https访问的实现方法


Posted in NodeJs onOctober 17, 2020

零、需求:

做一个局域网WebRTC视频聊天系统,需要用到HTTPS。因此,配置Node.js使其支持HTTPS访问。

一、解决

在线生成和证书
访问:https://csr.chinassl.net/generator-csr.html
填写好之后点生成即可,我们可以下载到两个文件。
这里我的域名是192.168.110.10,得到192.168.110.10_csr.txt192.168.110.10_key.txt这两个文件(妥善保存)。

然后再访问:https://csr.chinassl.net/free-ssl.html
192.168.110.10_csr.txt文件里的内容粘贴到代码框里,点获取免费证书之后可以下载到一个192.168.110.10_ssl.crt文件。

配置Node.js
参考Node.js配置源,确保已经配置好cnpm了。

安装express模块:

cnpm install express --save

安装express模块的相关依赖:

cnpm install body-parser --save
cnpm install cookie-parser --save
cnpm install multer --save

安装完成后可以查看express的版本号:

cnpm list express

使用HTTPS
192.168.110.10_key.txt192.168.110.10_ssl.crt(名字可能不同,但是格式是这样的)复制到你服务器程序同级目录下,比如我的目录就这三个文件:

192.168.110.10_key.txt
192.168.110.10_ssl.crt
app.js

app.js

//导入模块
const fs = require('fs')// 文件输入输出,用来导入证书    
const https = require('https')// https服务器 
const express = require('express')// express模块导入

//读取证书
const privateKey = fs.readFileSync('192.168.110.10_key.txt', 'utf8')
const certificate = fs.readFileSync('192.168.110.10_ssl.crt', 'utf8')

// 创建 express 应用
const app = express()
// 监听 / 路径的 get 请求
app.get('/', function(req, res) {
 res.send('Hello Word!')
})


const credentials = { key: privateKey, cert: certificate }
const httpsServer = https.createServer(credentials, app)
const SSLPORT = 443
httpsServer.listen(SSLPORT, function() {
 console.log('HTTPS Server is running on: https://localhost:%s', SSLPORT)
})

使用Node.js运行app.js

node app.js

Nodejs在局域网配置https访问的实现方法

设置信任这个证书就可以了~

成功配置Node.js使用HTTPS在局域网内访问!

二、总结

参考地址:
https://www.runoob.com/nodejs/nodejs-express-framework.html
https://www.jianshu.com/p/8b7b7d4d9992

到此这篇关于Nodejs在局域网配置https访问的实现方法的文章就介绍到这了,更多相关Nodejs局域网https访问内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

NodeJs 相关文章推荐
基于html5和nodejs相结合实现websocket即使通讯
Nov 19 NodeJs
nodejs根据ip数组在百度地图中进行定位
Mar 06 NodeJs
nodejs搭建本地http服务器教程
Mar 13 NodeJs
nodejs模块nodemailer基本使用-邮件发送示例(支持附件)
Mar 28 NodeJs
Nodejs之http的表单提交
Jul 07 NodeJs
nodejs中解决异步嵌套循环和循环嵌套异步的问题
Jul 12 NodeJs
nodejs实现一个word文档解析器思路详解
Aug 14 NodeJs
nodejs aes 加解密实例
Oct 10 NodeJs
NodeJS服务器实现gzip压缩的示例代码
Oct 12 NodeJs
NodeJS使用Range请求实现下载功能的方法示例
Oct 12 NodeJs
Nodejs + Websocket 指定发送及群聊的实现
Jan 09 NodeJs
nodejs nedb 封装库与使用方法示例
Feb 06 NodeJs
NodeJS开发人员常见五个错误理解
Oct 14 #NodeJs
浅谈vue websocket nodeJS 进行实时通信踩到的坑
Sep 22 #NodeJs
基于NodeJS开发钉钉回调接口实现AES-CBC加解密
Aug 20 #NodeJs
浅谈使用nodejs搭建web服务器的过程
Jul 20 #NodeJs
通过实例了解Nodejs模块系统及require机制
Jul 16 #NodeJs
Nodejs环境实现socket通信过程解析
Jul 03 #NodeJs
使用nodejs实现JSON文件自动转Excel的工具(推荐)
Jun 24 #NodeJs
You might like
PHP显示今天、今月、上月、今年的起点/终点时间戳的代码
2011/05/25 PHP
php过滤html中的其他网站链接的方法(域名白名单功能)
2014/04/24 PHP
PHP+jquery+ajax实现即时聊天功能实例
2014/12/23 PHP
PHP里的单例类写法实例
2015/06/25 PHP
浅析PHP中Session可能会引起并发问题
2015/07/23 PHP
PHP代码判断设备是手机还是平板电脑(两种方法)
2015/10/19 PHP
Yii输入正确验证码却验证失败的解决方法
2017/06/06 PHP
原生php实现excel文件读写的方法分析
2018/04/25 PHP
深入理解javascript的执行顺序
2014/04/04 Javascript
jquery鼠标放上去显示悬浮层即弹出定位的div层
2014/04/25 Javascript
JavaScript中5种调用函数的方法
2015/03/12 Javascript
跟我学习javascript的prototype,getPrototypeOf和__proto__
2015/11/17 Javascript
简要了解jQuery移动web开发的响应式布局设计
2015/12/04 Javascript
表单中单选框添加选项和移除选项
2016/07/04 Javascript
BootStrap table删除指定行的注意事项(笔记整理)
2017/02/05 Javascript
微信小程序Redux绑定实例详解
2017/06/07 Javascript
jQuery实现简单的计时器功能实例分析
2017/08/29 jQuery
node+express+ejs使用模版引擎做的一个示例demo
2017/09/18 Javascript
JavaScript实现AOP详解(面向切面编程,装饰者模式)
2017/12/19 Javascript
解决vue单页路由跳转后scrollTop的问题
2018/09/03 Javascript
ES6的Fetch异步请求的实现方法
2018/12/07 Javascript
jQuery实现动态生成年月日级联下拉列表示例
2019/05/11 jQuery
[13:21]DOTA2国际邀请赛采访专栏:RSnake战队国士无双,Fnatic.Fly
2013/08/06 DOTA
[00:59]DOTA2英雄背景故事——上古巨神
2020/06/28 DOTA
使用Python对Excel进行读写操作
2017/03/30 Python
django2+uwsgi+nginx上线部署到服务器Ubuntu16.04
2018/06/26 Python
python将控制台输出保存至文件的方法
2019/01/07 Python
Django中FilePathField字段的用法
2020/05/21 Python
英格兰足协官方商店:England Store
2019/07/12 全球购物
法国亚马逊官方网站:Amazon.fr
2020/12/19 全球购物
装饰活动策划方案
2014/02/11 职场文书
关于青春的演讲稿500字
2014/08/22 职场文书
导游词300字
2015/02/13 职场文书
大学生个人学年总结
2015/02/15 职场文书
护士旷工检讨书
2015/08/15 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python