Nginx配置SSL和WSS步驟介紹
前言
近期,由于要發(fā)布微信小程序,小程序的發(fā)布必須使用已備案的服務(wù)器域名及https的請(qǐng)求方式,之前已經(jīng)備案過(guò)一臺(tái)服務(wù)器了,此次小程序的后臺(tái)服務(wù)部署在另一臺(tái)服務(wù)器上,又不想重新部署后臺(tái)服務(wù),所以想到在已經(jīng)備案過(guò)的服務(wù)器上安裝Nginx并配置SSL,通過(guò)Nginx反向代理到另一臺(tái)服務(wù)器。
一.Nginx安裝
筆者使用的是騰訊云服務(wù)器Centos 7.5, 安裝教程網(wǎng)上有很多,筆者這里也是根據(jù)網(wǎng)上的教程進(jìn)行一個(gè)記錄。主要安裝過(guò)程中需要配置添加Nginx的SSL模塊。如已成功安裝可跳過(guò)。
1.下載Nginx
下載地址:Index of /download/
下載完成傳輸?shù)椒?wù)器上或者也可通過(guò)wget命令下載:
wget http://nginx.org/download/nginx-1.9.0.tar.gz
2.安裝依賴
1)安裝gcc-c++編譯器
yum install gcc-c++ yum install -y openssl openssl-devel
2)安裝pcre包
yum install -y pcre pcre-devel
3)安裝zlib包
yum install -y zlib zlib-devel
3.編譯安裝Nginx
1)解壓安裝包
tar -zvxf nginx-1.9.0.tar.gz
2)切換至nginx目錄,配置nginx,添加ssl模塊
cd nginx-1.9.0 ./configure --with-http_ssl_module
./configure --with-http_ssl_module必須配置,筆者第一次安裝時(shí)直接使用了默認(rèn)配置導(dǎo)致配置SSL證書(shū)時(shí)啟動(dòng)報(bào)錯(cuò)。
3)編譯安裝
makemake Install
4)查找安裝路徑
whereis nginx
5)切換至安裝目錄下,并進(jìn)入sbin目錄,啟動(dòng)nginx
cd /usr/local/nginx/sbin./nginx
6)查看nginx是否啟動(dòng)成功
二.SSL配置
1)獲取證書(shū)
筆者這里使用的是騰訊云,可在騰訊云申請(qǐng)免費(fèi)證書(shū),并下載nginx版本
?2)將下載得到的所有證書(shū)文件上傳至服務(wù)器上,放置在nginx的conf目錄下(與配置文件同級(jí))。
3)進(jìn)入nginx.conf文件,配置ssl信息
#user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 443; # 證書(shū)綁定的域名 server_name xxxxx; # 證書(shū)文件名稱,親測(cè)這里使用.pem和.crt的證書(shū)文件都可以 ssl_certificate xxxx.pem; # 由于版本問(wèn)題,部分版本配置文件需加上ssl on ssl on; #私鑰文件名稱 ssl_certificate_key xxx.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { root html; index index.html index.htm; } #error_page 404 /404.html; # redirect server error pages to the static page /50x.html # error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } location /ctp/{ # 填寫要轉(zhuǎn)發(fā)的服務(wù)器地址和端口 proxy_pass http://ip:port; } } }
詳細(xì)證書(shū)配置教程可參考騰訊云:SSL 證書(shū) Nginx 服務(wù)器 SSL 證書(shū)安裝部署 - 證書(shū)安裝 - 文檔中心 - 騰訊云
三.WSS配置
nginx配置websocket的代理比想象種簡(jiǎn)單很多,使用HTTP的Upgrade協(xié)議頭就能將連接從HTTP連接升級(jí)到WebSocket連接,具體配置如下:
location /ctp/{ # 填寫要轉(zhuǎn)發(fā)的服務(wù)器地址和端口 proxy_pass http://ip:port; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'Upgrade'; }
到此這篇關(guān)于Nginx配置SSL和WSS步驟介紹的文章就介紹到這了,更多相關(guān)Nginx配置SSL和WSS內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因
一般在訪問(wèn)某些網(wǎng)站或者我們?cè)谧霰镜販y(cè)試的時(shí)候,服務(wù)器突然返回502?Bad?Gateway?Nginx,這種問(wèn)題相信大家也遇到不少了,下面這篇文章主要給大家介紹了關(guān)于Nginx?502?bad?gateway錯(cuò)誤解決的九種方案及原因,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08Nginx配置本地圖片服務(wù)器的實(shí)現(xiàn)
本文主要介紹了Nginx配置本地圖片服務(wù)器的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12nginx 部署啟動(dòng)jar包用到的一些命令和流程操作
這篇文章主要介紹了nginx 部署啟動(dòng)jar包用到的一些命令和流程操作,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2023-11-11nginx location 配置 正則表達(dá)式實(shí)例詳解
本文通過(guò)實(shí)例代碼給大家介紹了nginx location 配置 正則表達(dá)式的問(wèn)題,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-07-07Nginx搭建負(fù)載均衡集群的實(shí)現(xiàn)
這篇文章主要介紹了Nginx搭建負(fù)載均衡集群的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03詳解用ELK來(lái)分析Nginx服務(wù)器日志的方法
這篇文章主要介紹了用ELK來(lái)分析Nginx服務(wù)器日志的方法,ELK是三個(gè)開(kāi)源軟件的縮寫,分別表示Elasticsearch,Logstash,Kibana,需要的朋友可以參考下2016-03-03Nginx設(shè)置靜態(tài)頁(yè)面壓縮和緩存過(guò)期時(shí)間的方法
這篇文章主要介紹了Nginx設(shè)置靜態(tài)頁(yè)面壓縮和緩存過(guò)期時(shí)間的方法,也是服務(wù)器架設(shè)后的必備設(shè)置,需要的朋友可以參考下2015-07-07