nodejs後臺接口配置https訪問

後臺配置https分爲以下幾步:

  1. 生成ssl證書,

  2. 安裝nginx,

  3. 配置nginx ssl認證和端口轉發

分別介紹如下

ssl證書生成

證書生成有兩種方式,自己生成或者第三方申請,快速部署使用阿里雲免費ssl證書即可。具體申請流程參見:https://yq.aliyun.com/articles/637307。注意:需要提前準備好域名和ip信息。

申請成功後得到 後綴爲crtkey的兩個文件,將其放在服務器某個位置下並記錄。

nignx安裝

打開網站:http://nginx.org/en/download.html

根據操作系統下載對應nginx程序包,這裏以windows版本下載爲例

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-pVLNMTCJ-1590414220054)(/Users/lf/Desktop/桌面 - 樑峯的MacBook Pro/my/後臺配置https.assets/image-20200525205308478.png)]

下載完成後解壓到硬盤某一位置,完成安裝。

驗證是否安裝成功:

如果當前服務器80端口未被佔用,在當前位置右鍵打開命令提示符,執行

start nginx 

窗口打開後瞬間消失,訪問 localhost 出現以下界面證明安裝成功。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-m7pz2i0z-1590414220057)(/Users/lf/Desktop/桌面 - 樑峯的MacBook Pro/my/後臺配置https.assets/image-20200525210423721.png)]

如果有程序佔用80 端口,那麼nginx啓動會有問題,需要修改對應配置文件 您安裝的路徑\conf\nginx.conf中的監聽端口,以修改爲81爲例,如下:

......
server {
        listen       81; 
        server_name  localhost;
        
......

修改完成後重新啓動,訪問localhost:設置的端口訪問驗證.

nginx 常用命令

nginx -v #查看版本
start nginx #啓動nginx
nginx -s reload # 重載入配置
nginx -s stop #stop是快速停止nginx,可能並不保存相關信息;
nginx -s quit #quit是完整有序的停止nginx,並保存相關信息。
nginx -s reopen #打開日誌文件

# windows 常用運維命令 
tasklist /fi "imagename eq nginx.exe"  #查看當前nginx進程
netstat -ano | findstr 80 #列出佔用指定端口進程
tasklist | findstr 2000 # 根據進程號查進程名稱
taskkill -PID <進程號> -F #強制關閉某個進程

https配置

修改nginx配置文件您安裝的路徑\conf\nginx.conf,

http {

	upstream your—app {
	    server 127.0.0.1:7001; # 需要監聽的端口名 後臺服務端口爲7001
	    keepalive 64;
	}
	
	server {
	    listen 443 ssl;
	    server_name xxx.cloud; # 配置的https的域名
	
	    ssl_certificate      C://nginx//ssl//shidian.crt;  # 這個是證書的crt文件所在目錄
	    ssl_certificate_key  C://nginx//ssl//shidian.key;  # 這個是證書key文件所在目錄
	
	    ssl_session_cache    shared:SSL:1m;
	    ssl_session_timeout  5m;
	
	    ssl_ciphers  HIGH:!aNULL:!MD5;
	    ssl_prefer_server_ciphers  on;
	
	 location / {
	    proxy_set_header   X-Real-IP            $remote_addr;
	    proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;
	    proxy_set_header   Host                   $http_host;
	    proxy_set_header   X-NginX-Proxy    true;
	    proxy_set_header   Connection "";
	    proxy_http_version 1.1;
	    proxy_pass         http://your-app;
	 }
	}
}
  • 將 crt 和 key文件位置替換爲實際位置

重啓nginxs

nginx -s reload

配置host文件,此步非必須,只是爲了在服務器測試是否配置成功

C:\Windows\System32\drivers\etc 路徑下
127.0.0.1          xxxx.cloud #需要配置的域名

執行到這裏,https配置完成

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章