要配置Nginx以支持WebSocket連接,需要進行以下步驟:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://your_websocket_server;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
}
$connection_upgrade
,它的值依賴于請求頭中的Upgrade字段。如果Upgrade字段存在且不為空,則將值設為"upgrade";否則,設為"close"。proxy_http_version
指令將HTTP版本設置為1.1,proxy_set_header
指令設置了Upgrade和Connection請求頭字段,以便支持WebSocket連接。http://your_websocket_server
替換為實際的WebSocket服務器地址。nginx -t
。systemctl restart nginx
(或者使用適合你的操作系統的命令)。完成上述步驟后,Nginx將會正確代理WebSocket連接。確保你的WebSocket服務器正常運行,并且Nginx可以訪問到它。