【服務器】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
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/175987.html
標籤:其他
上一篇:初試Python
