1. 程式人生 > >Nodejs建立https伺服器(Windows 7)

Nodejs建立https伺服器(Windows 7)

為了實驗一下WebRTC,搭了個簡單的https伺服器。說說步驟:

  1. 生成OpenSSL證書
  2. 使用Nodejs的https模組建立伺服器

OpenSSL 證書

我機子Windows 7,安裝了Cygwin,裡面安裝了openssl,我用它來生成https伺服器需要的證書檔案。

1. 生成私鑰key檔案

$ openssl genrsa -out privatekey.pem 1024

Generating RSA private key, 1024 bit long modulus
....++++++
....................................
.++++++ e is 65537 (0x10001)

2. 通過私鑰生成CSR證書籤名

$ openssl req -new -key privatekey.pem -out certrequest.csr

You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but
you can leave some blank For some fields there will be a default value, If you enter '.', the field will be left blank. ----- Country Name (2 letter code) [AU]:CN State or Province Name (full name) [Some-State]:ShanXi Locality Name (eg, city) []:Xian Organization Name (eg, company) [Internet Widgits Pty Ltd]:foruok Organizational Unit Name (eg, section) []:foruok Common Name (e.g. server FQDN or
YOUR name) []:foruok Email Address []:[email protected]163.com Please enter the following 'extra' attributes to be sent with your certificate request A challenge password []: An optional company name []:

3. 通過私鑰和證書籤名生成證書檔案

$ openssl x509 -req -in certrequest.csr -signkey privatekey.pem -out certification.pem

Signature ok
subject=/C=CN/ST=ShanXi/L=Xian/O=foruok/OU=foruok/CN=foruok/emailAddress=foruok@163.com
Getting Private key

Nodejs https 伺服器示例

從Nodejs文件裡摘出來的程式碼:


    const https = require('https');
    const fs = require('fs');

    const options = {
        key: fs.readFileSync('./privatekey.pem'),
        cert: fs.readFileSync('./certification.pem')
    };

    https.createServer(options, (req, res) => {
        res.writeHead(200);
        res.end('hello world\n');
    }).listen(8000);

執行 node httpsdemo.js,然後在Chrome裡訪問access https://192.168.40.158:8000。結果如下:

你可能注意到了,證書有點問題,點下位址列,能看怎麼回事兒:

我們建立的證書沒有經過身份驗證,不受信。有需要的話,可以去有資質的網路運營商申請自己的證書。

相關推薦

Nodejs建立https伺服器(Windows 7)

為了實驗一下WebRTC,搭了個簡單的https伺服器。說說步驟: 生成OpenSSL證書 使用Nodejs的https模組建立伺服器 OpenSSL 證書 我機子Windows 7,安裝了Cygwin,裡面安裝了openssl,我用它來生成htt

利用nodeJs 建立本地伺服器環境-加手機訪問本地專案

本地啟個伺服器,方便呼叫帶資料的測試 1首先去nodeJs官網下載最新版nodeJs     https://nodejs.org/en/ 2安裝成功後win+r開啟cmd 輸入node -help 或者node -v檢視是否安裝成功  3裝好後輸入 npm

使用HTTPS保障HTTP伺服器的安全性-使用Node.js HTTPS模組建立HTTPS伺服器

這篇文章是下面部落格的進一步搭建HTTPS server的部落格 // angular nodejs express mongodb apache,模擬線上部署(HTTP server) https://blog.csdn.net/liangxw1/arti

express建立https伺服器

首先需要建立證書檔案: $openssl genrsa -out privatekey.pem 1024 $openssl req -new -key privatekey.pem -out certrequest.csr $openssl x509 -req -in ce

nodejs建立TCP伺服器

說明:建立環境centos7 主要步驟 1. 使用net模組建立TCP伺服器 2. 使用telnet連線TCP伺服器 3. 使用net建立TCP客戶端 注意:步驟2和步驟3任選其一即可 正文 1.使用net模組建立TCP伺服器 新建專

前端開發如何通過nodejs建立web伺服器

今天剛學的如何應用nodejs建立web伺服器,對學習資料進行整理歸納下,希望大神們給指點下! 專案整體分類 首頁佈局 <!DOCTYPE html> <html> <head lang="en"> <meta char

如何使用nodejs建立Web伺服器

使用 Node 建立 Web 伺服器 什麼是 Web 伺服器? Web伺服器一般指網站伺服器,是指駐留於因特網上某種型別計算機的程式,Web伺服器的基本功能就是提供Web資訊瀏覽服務。它只需支援HTTP協議、HTML文件格式及URL,與客戶端的網路瀏覽器配合。 大

Nodejs 搭建https伺服器(二)

$ cd /Users/51testing/Desktop/https   $ express HttpsService ....    install dependencies:       $ cd HttpsService && npm insta

NodeJS 建立TCP伺服器 客戶端

var net = require("net"); var client = net.connect({port:8124},function(){ console.log("client connected"); client.write("world \r\n"

[NodeJS]建立HTTP、HTTPS伺服器與客戶端

超文字傳輸協議(HTTP,HyperText Transfer Protocol)是網際網路上應用最為廣泛的一種網路協議。所有的WWW檔案都必須遵守這個標準。設計HTTP最初的目的是為了提供一種釋出和接收HTML頁面的方法。其屬於下圖七層網路協議的“應用層

windows建立ftp伺服器

大概流程敘述: 1.控制面板-程式-找到開啟或關閉windows功能,找到如下: 2.開啟管理,找到Internet資訊服務管理,建立ftp站點,如下: 3.建立完成後,在本地使用者和組裡面建立新的使用者,預設在user組下面,刪掉如下: 4.找到建立的ftp伺

https\SSL安全證書配置,Tomcat、nodejs、Nginx伺服器安全證書配置

安全證書的好處我就不多說,直接上圖、申請ssl證書、做個耿直boy。 前提條件:阿里雲服務、域名、linux系統、Tomcat(nodejs或Nginx)、購買ssl證書。 用jdk生成的安全證書裝到Tomcat上,由於沒有通過認證,效果如下圖: 購買安全證書,安裝之後s

如何在windows建立FTP伺服器

建立FTP伺服器首先要在windows上開啟FTP和IIS相關服務。 1、下面就如何開通相關服務進行說明。 控制面板→程式和功能→開啟或關閉windows功能→開啟Internet資訊服務(三個相關服務都開啟,不完全開啟會開啟服務不成功),開啟相關服務後,一般會進行重啟。 2、開通F

nodejs建立伺服器實現使用者資訊的增刪改查

1.目錄的結構     node_modules      儲存的是下載好的所需要的包檔案目錄(使用npm下載)     public    儲存的是靜態資源(即寫好的HTML頁面)   &nb

Windows Service 2012 R2 下如何建立ftp伺服器

1、首先在本地機器上建立一個使用者!這些使用者是用來登入到FTP的!我的電腦右鍵->管理->本地使用者和組->使用者->“右鍵”新建使用者->輸入使用者名稱和密碼再點建立就行了!       2、其次是在D盤

windows下用nginx配置https伺服器

1.安裝nginx 先到nginx官網下在nginx http://nginx.org/en/download.html 將下載好的檔案解壓出來修改檔名為 nginx ,然後拷貝到C盤下,目錄如下: 執行 nginx start nginx 驗證 在

如何從 Windows 7、8 和 10 建立可啟動的 Linux USB 盤?

如果你想了解 Linux,首先要做的是在你的系統上安裝 Linux 系統。 歡迎工作一到八年的Java工程師朋友們加入Java高階交流:854630135 本群提供免費的學習指導 架構資料 以及免費的解答 不懂得問題都可以在本群提出來 之後還會有直播平臺和講師直接交流噢 它可以通過兩種方式實現,使用

如何配置雲伺服器 CentOS 7.0 系統 Apache HTTPS 服務

弄好SSL證書之後就可以開始配置HTTPS服務了。這裡我直接使用的阿里雲的PHP環境映象,測試環境如下: CentOS 7.0 (https://www.centos.org/) Apache httpd 2.4.6 (http://httpd.apache.org)

nodejs用阿里雲ssl配置Https伺服器

var https = require('https'); var privateKey = fs.readFileSync('./path/to/215083744800064.key', 'u

nodejs使用nodejs建立簡單的靜態檔案伺服器

在開始之前,應該好好規劃一下專案的檔案目錄了。我的目錄結構如下: assets放置網站的靜態檔案css,js,img等;common存放專案的配置檔案和一些通用檔案;server存放服務處理檔案,將要建立的靜態檔案服務就是放在此目錄中; tpl放置的是模板檔案也就是網頁