文章詳情頁
Nginx支持websocket的配置詳解
瀏覽:118日期:2023-06-15 15:23:37
目錄
- 一、對wss與nginx代理wss的理解:
- 二、Nginx 支持websocket的配置
一、對wss與nginx代理wss的理解:
1、wss協(xié)議實(shí)際是websocket+SSL,就是在websocket協(xié)議上加入SSL層,類似https(http+SSL)。
2、利用nginx代理wss【通訊原理及流程】
- 客戶端發(fā)起wss連接連到nginx
- nginx將wss協(xié)議的數(shù)據(jù)轉(zhuǎn)換成ws協(xié)議數(shù)據(jù)并轉(zhuǎn)發(fā)到Workerman的websocket協(xié)議端口
- Workerman收到數(shù)據(jù)后做業(yè)務(wù)邏輯處理
- Workerman給客戶端發(fā)送消息時(shí),則是相反的過程,數(shù)據(jù)經(jīng)過nginx/轉(zhuǎn)換成wss協(xié)議然后發(fā)給客戶端
二、Nginx 支持websocket的配置
server { listen 80; server_name 域名; location / { proxy_pass http://127.0.0.1:8080/; // 代理轉(zhuǎn)發(fā)地址 proxy_http_version 1.1; proxy_read_timeout 3600s; // 超時(shí)設(shè)置 // 啟用支持websocket連接 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; } location /upload { // 靜態(tài)資源地址 root /mnt/resources; } }
重要的是這兩行,它表明是websocket連接進(jìn)入的時(shí)候,進(jìn)行一個(gè)連接升級將http連接變成websocket的連接。
proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";
proxy_read_timeout; 表明連接成功以后等待服務(wù)器響應(yīng)的時(shí)候,如果不配置默認(rèn)為60s;
proxy_http_version 1.1; 表明使用http版本為1.1
到此這篇關(guān)于Nginx支持websocket的配置的文章就介紹到這了,更多相關(guān)Nginx websocket配置內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!
標(biāo)簽:
Nginx
排行榜
