從 node服務部署,到https配置與nginx轉發(fā)
最近在搞小程序,小程序的服務必須使用https協議,之前沒學過這些,于是寫下這篇博客,記錄自己遇到的問題
本篇博客解決這些問題,服務器的登陸配置、項目的部署、https證書的申請、nginx部署https與轉發(fā)本地服務
通過私鑰登陸服務器騰訊云重裝系統(tǒng)
登陸設置選擇使用ssh密鑰設置
選擇ssh密鑰,如果沒有則創(chuàng)建ssh密鑰
點擊開始安裝
下載生成好的私鑰到本地
使用終端進行配置
// 賦予私鑰文件僅本人可讀權限 chmod 400 <下載的與云服務器關聯的私鑰的絕對路徑> // 運行以下遠程登錄命令 ssh -i <下載的與云服務器關聯的私鑰的絕對路徑>給服務器裝nvm管理node版本@
// 下載nvm wget https://github.com/cnpm/nvm/archive/v0.23.0.tar.gz // 解壓nvm tar -xf v0.23.0.tar.gz // 進入目錄 cd nvm-0.23.0/ // 安裝nvm ./install.sh // 安裝后執(zhí)行 source ~/.bash_profile
使用nvm安裝node
nvm install 10.14.2給服務器安裝git
由于我的代碼托管在github上,給服務器安裝git方便管理代碼
在linux安裝git
克隆項目到服務器git clone https://github.com/lfhwnqe/wechat_server.git
進入項目根目錄安裝依賴
cd wechat_server npm install
啟動項目進行連接
npm start
現在項目在本7001端口啟動
此時訪問服務器公網ip:7001就可以訪問到服務器上啟動的服務
把域名映射到服務器進入域名管理界面(我用的是阿里的)
點擊解析設置
點擊修改
在記錄值處修改為服務器的公網ip
保存設置,然后訪問你的域名有服務監(jiān)聽80端口的話就可以得到響應了
申請https證書先申請一個免費https證書
在服務器運行一下命令,通過openssl生成csr和私鑰
openssl req -new -newkey rsa:2048 -sha256 -nodes -out linuoblog.cn.csr -keyout linuoblog.cn.key -subj "/C=CN/ST=ShenZhen/L=ShenZhen/O=NUO Inc./OU=Web Security/CN=linuoblog.cn"
下面是上述命令相關字段含義:
C:Country ,單位所在國家,為兩位數的國家縮寫,如: CN 就是中國
ST 字段: State/Province ,單位所在州或省
L 字段: Locality ,單位所在城市 / 或縣區(qū)
O 字段: Organization ,此網站的單位名稱;
OU 字段: Organization Unit,下屬部門名稱;也常常用于顯示其他證書相關信息,如證書類型,證書產品名稱或身份驗證類型或驗證內容等;
CN 字段: Common Name ,你的網站域名;
如果你是使用https://freessl.cn獲取證書,在使用openssl命令生成 csr 文件后,在頁面選擇csr生成,并粘貼生成的csr內容到頁面,然后通過該網站的驗證方式,驗證所有者,即可獲得ca證書
https://freessl.cn獲得的ca證書是 .pem后綴的證書文件,證書文獲取成功后,就可以在 Nginx 配置文件里配置 HTTPS 了。
配置nginx,域名啟用https,通過nginx把https請求轉發(fā)到本地node服務要開啟 HTTPS 服務,在配置文件信息塊(server block),必須使用監(jiān)聽命令 listen 的 ssl 參數和定義服務器證書文件和私鑰文件,同時通過設置location模塊把發(fā)送到網頁的請求轉發(fā)到服務器上的node服務,如下所示:
worker_processes auto; http { #配置共享會話緩存大小,視站點訪問情況設定 ssl_session_cache shared:SSL:10m; #配置會話超時時間 ssl_session_timeout 10m; server { listen 443 ssl; server_name linuoblog.cn; #設置長連接 keepalive_timeout 70; #HSTS策略 add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always; #證書文件 ssl_certificate full_chain.pem; # 證書的路徑 #私鑰文件 ssl_certificate_key linuoblog.cn.key; # 私鑰的路徑 location / { # 這里是把鏈接代理到本機的7001端口 proxy_pass http://127.0.0.1:7001; } } } events { worker_connections 1024; ## Default: 1024 }
配置完成后啟動nginx
nginx
這個時候,訪問自己的域名就能看到https服務了。同時也通過nginx把網頁端的請求轉發(fā)到了服務器本地的server上
原文地址
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/40264.html
從 node服務部署,到https配置與nginx轉發(fā) 最近在搞小程序,小程序的服務必須使用https協議,之前沒學過這些,于是寫下這篇博客,記錄自己遇到的問題 本篇博客解決這些問題,服務器的登陸配置、項目的部署、https證書的申請、nginx部署https與轉發(fā)本地服務 通過私鑰登陸服務器 騰訊云重裝系統(tǒng) 登陸設置選擇使用ssh密鑰設置 選擇ssh密鑰,如果沒有則創(chuàng)建ssh密鑰 點擊開始安裝...
摘要:上一篇文章中大概嘗試安裝的一些過程以及在配置中出現的問題還有一些解決方式,那么在本次過程嘗試中,將進一步進行服務器的基礎配置,以及前端應用部署經過上次已經安裝至服務器中了,在這里面主要介紹一下部署相關所需要的配置,例如監(jiān)聽端口服務轉發(fā)靜態(tài)資 OK! 上一篇文章中大概嘗試安裝mysql、nginx、nodeJs、pm2 的一些過程以及在配置中出現的問題還有一些解決方式,那么在本次過程嘗...
摘要:部署項目寫在前面作為輕量級虛擬化技術,擁有持續(xù)集成版本控制可移植性隔離性和安全性等優(yōu)勢。容器可以被創(chuàng)建啟動停止刪除暫停等。重新運行應用容器直接基于鏡像來啟動容器,運行命令將宿主機的掛載到容器的目錄上。Docker 部署 vue 項目 1.寫在前面: Docker 作為輕量級虛擬化技術,擁有持續(xù)集成、版本控制、可移植性、隔離性和安全性等優(yōu)勢。本文使用Docker來部署一個vue的前端應用,并盡...
閱讀 1574·2021-09-23 11:21
閱讀 2345·2021-09-07 10:13
閱讀 834·2021-09-02 10:19
閱讀 1125·2019-08-30 15:44
閱讀 1720·2019-08-30 13:18
閱讀 1913·2019-08-30 11:15
閱讀 1105·2019-08-29 17:17
閱讀 2017·2019-08-29 15:31