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