要在Nginx中配置WebSocket支持,需要在Nginx的配置文件中添加以下配置:
- 在http块中添加以下配置:
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
upstream websocket {
server localhost:8080;
}
server {
listen 80;
location / {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $connection_upgrade;
}
}
在这个配置中,首先定义了一个map变量$connection_upgrade,用于判断是否升级协议。然后用upstream定义了一个代理服务器websocket,指向WebSocket服务器的地址和端口。最后在server块中配置了一个location,将所有的请求转发到WebSocket服务器,并设置了升级协议的头部信息。
- 保存配置文件并重启Nginx服务:
sudo nginx -s reload
现在Nginx应该已经配置好WebSocket支持,可以通过WebSocket客户端连接到Nginx服务器进行通信了。