Nginx支持websocket的配置詳解
一、對(duì)wss與nginx代理wss的理解:
1、wss協(xié)議實(shí)際是websocket+SSL,就是在websocket協(xié)議上加入SSL層,類(lèi)似https(http+SSL)。
2、利用nginx代理wss【通訊原理及流程】
- 客戶(hù)端發(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給客戶(hù)端發(fā)送消息時(shí),則是相反的過(guò)程,數(shù)據(jù)經(jīng)過(guò)nginx/轉(zhuǎn)換成wss協(xié)議然后發(fā)給客戶(hù)端
二、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è)連接升級(jí)將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)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- Nginx的WebSocket反向代理實(shí)踐過(guò)程
- Nginx配置WebSocket的詳細(xì)教程
- 如何配置Nginx作為WebSocket代理
- Nginx中配置WebSocket代理的詳細(xì)步驟
- Nginx配置支持WebSocket功能詳解
- WebSocket 配置與Nginx 的完美結(jié)合(過(guò)程詳解)
- Nginx配置WebSocket代理的示例代碼
- 詳解Nginx如何處理WebSocket連接
- 如何配置nginx成功代理websocket
- Nginx配置WebSocket反向代理的實(shí)現(xiàn)示例
- 詳解Nginx配置WebSocket(支持wss與ws連接)
相關(guān)文章
nginx鏡像構(gòu)建的知識(shí)點(diǎn)及方法步驟詳解
這篇文章主要為大家介紹了nginx鏡像構(gòu)建的知識(shí)點(diǎn)詳解,<BR>有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08Nginx+uwsgi+ssl配置https的詳細(xì)步驟
nginx是一個(gè)輕量級(jí)的web服務(wù)器,在處理靜態(tài)資源和高并發(fā)有優(yōu)勢(shì),uwsgi是一個(gè)基于python的高效率的協(xié)議,處理后端和動(dòng)態(tài)網(wǎng)頁(yè)有優(yōu)勢(shì),我這里使用的是Ubuntu18.04版本,服務(wù)器在阿里云,感興趣的朋友跟隨小編一起看看吧2023-10-10Nginx配置系統(tǒng)服務(wù)&設(shè)置環(huán)境變量方式
本文介紹了如何將Nginx配置為系統(tǒng)服務(wù)并設(shè)置環(huán)境變量,以便更方便地對(duì)Nginx進(jìn)行操作,通過(guò)配置系統(tǒng)服務(wù),可以使用系統(tǒng)命令來(lái)啟動(dòng)、停止或重新加載Nginx,并通過(guò)設(shè)置環(huán)境變量可以簡(jiǎn)化執(zhí)行其他命令的操作步驟2025-03-03ubuntu16.04下徹底卸載nginx的相關(guān)命令
nginx是一款自由的、開(kāi)源的、高性能的HTTP服務(wù)器和反向代理服務(wù)器;這篇文章主要介紹了ubuntu16.04下徹底卸載nginx的相關(guān)命令,需要的朋友可以參考下2018-12-12