【服务器】Nodejs在局域网配置https访问
【服务器】Node.js在局域网配置https访问
零、需求:
做一个局域网WebRTC视频聊天系统,需要用到HTTPS。因此,配置Node.js使其支持HTTPS访问。
一、解决
在线生成和证书
访问:https://csr.chinassl.net/generator-csr.html
填写好之后点生成即可,我们可以下载到两个文件。
这里我的域名是192.168.110.10,得到192.168.110.10_csr.txt和192.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.txt和192.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

设置信任这个证书就可以了~
成功配置Node.js使用HTTPS在局域网内访问!
二、总结
参考地址:
https://www.runoob.com/nodejs/nodejs-express-framework.html
https://www.jianshu.com/p/8b7b7d4d9992
【服务器】Nodejs在局域网配置https访问的更多相关文章
- OkHttp配置HTTPS访问+服务器部署
1 概述 OkHttp配置HTTPS访问,核心为以下三个部分: sslSocketFactory() HostnameVerifier X509TrustManager 第一个是ssl套接字工厂,第二 ...
- 使用docker搭建最新版本的gitea,并配置HTTPS访问
使用docker搭建最新版本的gitea,并配置HTTPS访问 博客说明 文章所涉及的资料来自互联网整理和个人总结,意在于个人学习和经验汇总,如有什么地方侵权,请联系本人删除,谢谢! 简介 之前有搭建 ...
- Linux Apache配置https访问
配置https访问 该环境是rh254课程配套的一个环境,不过配置方法步骤相同. 要求: 使用虚拟主机技术部署两个网站: 网站1: 绑定域名 www0.example.com 目录在 /srv/www ...
- 如何通过Zabbix Docker配置HTTPS访问系统?
概述 前面文章曾介绍过如果使用docker-compose快速部署一个Zabbix系统,但是部署的Zabbix系统是使用http协议进行访问的.有时候为了保证安全.我们需要配置使用https协议进行访 ...
- 最新阿里云服务器免费SSL证书配置HTTPS的两种方法(图文教程二)
在大家学习如何利用免费SSL证书配置网站HTTPS之前,我们先要搞清楚为什么要开启HTTPS,这个绿色的小锁真的有用吗?所谓的HTTPS其实是(安全套接字层超文本传输协议)是以安全为目标的HTTP通道 ...
- 阿里云 rails nginx 配置https访问
1.申请免费型dv ssl证书:https://common-buy.aliyun.com/?spm=a2c4e.11155515.0.0.7zzvOZ&commodityCode=cas#/ ...
- lamp之apache配置https访问
配置apache 使用https 注:怕其他人由于路径的原因出问题,首先声明一下,本人apache的安装目录为 : /usr/local/httpd2.4.25,如果不是,请参考进行配置 注: 对于如 ...
- nginx配置https访问
一.准备 环境:centos6.8 nginx:1.13.6 二.开始 首先安装依赖包: yum install -y gcc gcc-c++ autoconf automake make ...
- 基于openresty配置https访问
安装方法:http://openresty.org/cn/linux-packages.html 1. openssl的版本信息 [root@localhost conf]# openssl vers ...
- 本地测试Tomcat配置Https访问
一.tomcat开启HTTPS配置 1) 准备证书 使用jdk工具keytool生成一个ssl测试用证书, 一路按照提示操作输入即可 keytool -genkey -alias tomcat -ke ...
随机推荐
- Java技术栈总结-基础
- - -计算机技术演化- - -1 编程语言演化1.1 写在最前 此文用于个人总结,串接知识点 1.2 汇编 举例:mov .add 特点:程序量很大,几百行.几千行乃至几万行 1.3 VB- ...
- .net工作流elsa-书签
啥是书签 流程引擎的核心关注点是安排流程,如:第1步做什么 → 第2步做什么 → 第n步做什么...,至于各步骤具体是怎么做的,是由你来决定的,这不是流程引擎关注的重点. 流程安排可能会涉及到分叉.并 ...
- android主线程与子线程
创建子线程创建子线程 更多关于java线程的文章可以查看这两篇 线程1 创建线程的方法 在android中穿件子线程的方案很简单 创建子线程的几种方法 ///////第一种/////// class ...
- MacOS修改应用快捷键的一般思路
具体步骤为: 使用CheatSheet软件查看菜单项名称 在系统设置中修改菜单项的快捷键 举个例子:修改Chrome中左右切换tab的快捷键(系统语言为英文,中文同理) 默认采用Ccontrol Ta ...
- Jenkins插件:Generic Webhook Trigger
Jenkins插件:Generic Webhook Trigger 作为一名软件测试工程师,在日常工作中,我经常需要使用Jenkins来进行持续集成和持续部署(CI/CD).而Jenkins的众多插件 ...
- Hetao P1169 点集 题解 [ 黄 ][ 线性dp ]
点集 题解 一道非常傻逼,非常傻逼的暴力题,一点都不优雅,这能放普及 T4 真是开了眼了. 本题难点主要就是在时间复杂度的计算上,只要算对了并且有勇气去打就能 AC . 首先发现能形成一个点集,当且仅 ...
- [ZJOI2019] 语言 题解
不愧是 \(ZJOI\),<最可做的一道题>都让人一头雾水-- 首先将问题转化到链上. 可以将总共的组数转化为每个点可以到达的城市. 明显给每个点建一棵动态开点线段树,维护可以和他通商的点 ...
- Linux挂载U盘,SD卡
Linux挂载U盘,SD(TF)卡 1.插入U盘,执行如下指令后能看到设备则说明连接成功 sudo fdisk -l #查看外接设备名称,一般为/dev/sd...,这里假设为/dev/sdc1 2. ...
- manim边学边做--相机Camera简介
在Manim中,Camera是实现动画效果的重要工具之一. 它就像我们观察动画的 眼睛,通过控制相机的位置.角度和视野,可以创造出丰富多样的视觉效果. Manim社区版本中提供了多种Camera类型, ...
- Python3环境,树莓派使用bluepy与BLE设备通信
扫描设备 创建一个ScanDelegate 1 class ScanDelegate(DefaultDelegate): 2 def __init__(self): 3 DefaultDelegate ...