国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

nodejs express配置自簽名https服務器的方法

來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 22:14:11
文檔

nodejs express配置自簽名https服務器的方法

nodejs express配置自簽名https服務器的方法:在nodejs中使用express來搭建框架可以說是非常的簡單方便,但是一般默認創(chuàng)建的都是http服務器,也就是只能通過http協(xié)議進行訪問。如今https已經(jīng)是發(fā)展趨勢,我們應該順應時代的潮流。在本篇文章中,我們將會來使用自簽名的方式創(chuàng)建證書,然后使用expres
推薦度:
導讀nodejs express配置自簽名https服務器的方法:在nodejs中使用express來搭建框架可以說是非常的簡單方便,但是一般默認創(chuàng)建的都是http服務器,也就是只能通過http協(xié)議進行訪問。如今https已經(jīng)是發(fā)展趨勢,我們應該順應時代的潮流。在本篇文章中,我們將會來使用自簽名的方式創(chuàng)建證書,然后使用expres

在nodejs中使用express來搭建框架可以說是非常的簡單方便,但是一般默認創(chuàng)建的都是http服務器,也就是只能通過http協(xié)議進行訪問。如今https已經(jīng)是發(fā)展趨勢,我們應該順應時代的潮流。在本篇文章中,我們將會來使用自簽名的方式創(chuàng)建證書,然后使用express框架來搭建https服務器,最后讓瀏覽器或者客戶端使用https協(xié)議進行訪問。

首先我們要生成證書文件:

(1)生成私鑰key文件(下面的pathway表示你要保存的文件路徑位置)
 

openssl genrsa 1024 > /pathway/private.pem

(2)通過上面生成的私鑰文件生成CSR證書簽名

 openssl req -new -key /pathway/private.pem -out csr.pem 

(3)通過上述私鑰文件和CSR證書簽名生成證書文件

代碼如下:openssl x509 -req -days 365 -in csr.pem -signkey /pathway/private.pem -out /pathway/file.crt 

此時生成的三個文件如下:

此時把這三個文件拷貝到你的nodejs項目目錄下,比如我直接在項目根目錄下新建certificate文件夾,然后放入三個文件:

 完成以上步驟后,修改項目的啟動文件,我這里的啟動文件是app.js,或者有人是server.js,以下代碼實現(xiàn)都一樣:

var express = require('express'); // 項目服務端使用express框架 
var app = express(); 
var path = require('path'); 
var fs = require('fs'); 
 
//使用nodejs自帶的http、https模塊 
var http = require('http'); 
var https = require('https'); 
 
//根據(jù)項目的路徑導入生成的證書文件 
var privateKey = fs.readFileSync(path.join(__dirname, './certificate/private.pem'), 'utf8'); 
var certificate = fs.readFileSync(path.join(__dirname, './certificate/file.crt'), 'utf8'); 
var credentials = {key: privateKey, cert: certificate}; 
 
var httpServer = http.createServer(app); 
var httpsServer = https.createServer(credentials, app); 
 
//可以分別設(shè)置http、https的訪問端口號 
var PORT = 8000; 
var SSLPORT = 8001; 
 
//創(chuàng)建http服務器 
httpServer.listen(PORT, function() { 
 console.log('HTTP Server is running on: http://localhost:%s', PORT); 
}); 
 
//創(chuàng)建https服務器 
httpsServer.listen(SSLPORT, function() { 
 console.log('HTTPS Server is running on: https://localhost:%s', SSLPORT); 
}); 
 
//可以根據(jù)請求判斷是http還是https 
app.get('/', function (req, res) { 
 if(req.protocol === 'https') { 
 res.status(200).send('This is https visit!'); 
 } 
 else { 
 res.status(200).send('This is http visit!'); 
 } 
}); 

代碼實現(xiàn)完成后,啟動app.js腳本,可以使用"node app.js"命令來啟動,或者在其他IDE中run, 然后在瀏覽器中訪問(注意express不是系統(tǒng)內(nèi)置模塊,需要通過npm安裝):

http訪問:

https訪問:

可以看到我們已經(jīng)成功使用https來訪問我們的服務器,但是Chrome瀏覽器卻顯示紅色的Not Secure,這是因為這個證書是我們自建的,沒有經(jīng)過第三方機構(gòu)驗證,所以會出現(xiàn)警告的提示。后續(xù)博客我們會介紹如何申請經(jīng)過認證的證書。

在Chrome瀏覽器中打開開發(fā)者模式,在安全Security頁中可以看到當前頁面的證書信息,如下所示:

     

點擊“View certificate”則可以看到證書的詳情:

展開detail則可以看到我們創(chuàng)建證書的時候輸入的各項證書信息。

同時我們也可以使用Postman來模擬客戶端請求(實際開發(fā)中,服務端同學可以把證書發(fā)給客戶端同學,經(jīng)過簡單配置就能實現(xiàn)https通信了):

http請求:

https請求:

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

nodejs express配置自簽名https服務器的方法

nodejs express配置自簽名https服務器的方法:在nodejs中使用express來搭建框架可以說是非常的簡單方便,但是一般默認創(chuàng)建的都是http服務器,也就是只能通過http協(xié)議進行訪問。如今https已經(jīng)是發(fā)展趨勢,我們應該順應時代的潮流。在本篇文章中,我們將會來使用自簽名的方式創(chuàng)建證書,然后使用expres
推薦度:
標簽: js 服務器 https
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 国产高清一级在线观看 | 亚洲一区二区免费看 | 亚洲国产精品成人综合久久久 | 一区二区日韩 | 一区二区精品在线 | 亚洲欧洲日韩在线 | 亚洲热在线 | 青青国产成人久久91网站站 | 一级毛片一级毛片 | 国产成人欧美一区二区三区的 | 伊人蕉| 亚洲欧美日本综合 | 欧洲一区二区三区在线观看 | 手机看片日韩欧美 | 国产欧美日韩在线观看 | 欧美日韩成人 | 日韩成人国产精品视频 | 国产成人免费高清激情明星 | 国产精品久久久久久久成人午夜 | 国产va在线观看 | 欧美日韩亚洲一区二区三区 | 亚洲精品一二三 | 国产精品一区二区久久精品 | 91精品一区二区三区在线观看 | 亚洲日韩图片专区第1页 | 欧美a区 | 香蕉久久一区二区不卡无毒影院 | 亚洲欧美综合区自拍另类 | 久久99精品国产99久久 | 91.久久| 一区二区电影 | 欧美一级色图 | 夜精品a一区二区三区 | 91精品欧美一区二区三区 | 欧美精品人爱c欧美精品 | 免费一级 一片一毛片 | 欧美日韩视频一区二区三区 | 欧美激情在线播放一区二区三区 | 久操久热 | 国模吧双双大尺度炮交gogo | 欧洲日韩 |