websocket nginx 负载配置
时间: 2023-09-28 17:12:10 浏览: 139
Nginx反向代理Websocket
要在 Nginx 上配置 WebSocket 负载均衡,需要使用 Nginx 的 HTTP Upstream 模块。以下是一个基本的配置示例:
1. 安装 Nginx 和 Upstream 模块:
```
sudo apt-get update
sudo apt-get install nginx
sudo apt-get install nginx-module-stream
```
2. 编辑 nginx.conf 文件,在 http 块中添加 upstream 块,配置负载均衡器:
```
http {
upstream websocket {
server 192.168.1.1:8080;
server 192.168.1.2:8080;
server 192.168.1.3:8080;
}
}
```
3. 在 server 块中添加 location 块,指定 WebSocket 的路由和代理:
```
server {
listen 80;
server_name example.com;
location /ws {
proxy_pass http://websocket;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
}
```
以上配置将在 WebSocket 请求的 /ws 路由上进行负载均衡,并使用 Upgrade 和 Connection 头来启用 WebSocket 协议。
注意:如果你的 WebSocket 服务使用 SSL/TLS 加密,你需要根据需要添加 SSL/TLS 配置到 Nginx。
阅读全文