国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Nodejs多站點切換Htpps協議詳解及簡單實例

2024-05-06 15:10:53
字體:
來源:轉載
供稿:網友

Nodejs多站點切換Htpps協議詳解

純屬趕個時髦,折騰了兩天終于將個人小站的全部服務由http協議切換到了https,整個過程雖然也不算太麻煩,但也不得不承認,個人對互聯網安全這方面的知識確認比較欠缺;

Letsencrypt是由Mozilla、思科和EFF等組織發起的,免費向廣大互聯網網站提供SSL證書,目的在于加速推進互聯網由Http過渡到Https,很高興周末能夠與其不期而遇,這對于一個互聯網散戶來說,絕對是大大的福利,所以決定乘周末折騰一番:先搞到證書,再改程序;

獲取letsencrypt頒發的免費的SSL證書也是相對比較簡單的,我還是個windows服務器,目前沒能耐去折騰Linux,所以要下載letsencrypt-win-simple的安裝包,運行letsencrypt.exe就開始了:第一步輸入郵箱,如果不是第一次申請會跳過前兩步,然后有5個選項供你選擇,一般選M,輸入M,Enter就到了讓你輸入需要證書的域,接著輸入這個域對應的站點的根目錄,輸入一個線上運行的域即可,指定的根目錄需要是能夠直接訪問的,因為他會訪問你輸入的域以及根目錄下的某個文件,我很納悶他是怎么在我站點新建的那些目錄和驗證文件,也就是說,他會在你指定的目錄下新建兩層目錄和一個他需要訪問的驗證文件,準確的說他要知道這個亂碼文件里的一段亂碼內容來完成認證;完成認證后就會在C:/Users/Administrator/AppData/Roaming/letsencrypt-win-simple/httpsacme-v01.api.letsencrypt.org目錄下生成證書文件;接下來的步驟就相對可以隨意些了;

如果你就一個主域和一個站點,那么就可以拿證書去改程序了;

如果真的這樣就完事了,那么是否感覺太快了,以致于沒啥體驗了;按照上面的步驟一個域下面可以生成一次證書,那么重復這些步驟,生成多個域下面的多個證書自然也是可以的了,問題在于必要性,或許折騰就是在為你的天真弱知買單;

Ok,我很天真;我為主域和兩個二級域各生成了一次證書,接下來改程序咯!

我的站點是用Nodejs搭建的,內部由http-proxy代理來串起來的3個小站點,沒有使用Nginx完全是為了以業余的玩性多去理解一點Nodejs;接下來主站監聽443端口,二級站點由http-proxy代理分發;

 var https=require('https');var http=require('http');var fs=require('fs');var server = http.createServer(app);var httpsServer=https.createServer({ key: fs.readFileSync('./privatekey.pem'), cert: fs.readFileSync('./certificate.pem')},app);httpsServer.listen(443);server.listen(80);

  代理中間件大概的樣子:

app.use(function(req,res,next){  var proxy = httpProxy.createProxyServer({    headers:{      'x-forward-ip':req.ip.match(/([/w/.]+)/g)[1]    }  });  proxy.on('error', function (err, req, res) {    res.writeHead(500, {      'Content-Type': 'text/plain'    });    res.end('Something went wrong.');  });    switch (req.headers.host){    case 'm.famanoder.cn':    proxy.web(req, res, { target: 'https://localhost:2333' });    break;    case 'cdn.famanoder.cn':     proxy.web(req, res, { target: 'https://localhost:3222' });    break;    default:       next();  }});            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 博野县| 东山县| 泊头市| 平原县| 河曲县| 和平县| 通辽市| 繁峙县| 长葛市| 和林格尔县| 临沭县| 武冈市| 河池市| 漳浦县| 宜兰市| 许昌市| 仁布县| 苗栗县| 乌拉特后旗| 土默特右旗| 周口市| 永福县| 清河县| 温州市| 桂东县| 日照市| 海盐县| 贡山| 额敏县| 天等县| 万安县| 开原市| 澳门| 汝城县| 普格县| 晋江市| 黄陵县| 洛南县| 府谷县| 永德县| 柯坪县|