nginx 代理ws服务
时间: 2023-06-14 18:06:28 浏览: 136
nginx代理服务器
5星 · 资源好评率100%
要将 NGINX 用作 WebSocket 代理,您需要在 NGINX 配置文件中进行以下更改:
1. 增加 `proxy_set_header Upgrade $http_upgrade;` 和 `proxy_set_header Connection "upgrade";` 以确保 NGINX 将 Upgrade 头和 Connection 头发送到后端服务器。
2. 增加 `proxy_http_version 1.1;` 以使 NGINX 使用 HTTP/1.1 协议。
3. 增加 `proxy_set_header Host $host;` 以将主机头发送到后端服务。
以下是一个示例配置文件:
```
server {
listen 80;
server_name example.com;
location /ws {
proxy_pass http://backend_server:8080;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_http_version 1.1;
proxy_set_header Host $host;
}
}
```
在这个示例中,NGINX 将客户端的 WebSocket 连接转发到名为 `backend_server` 的后端服务器的 `8080` 端口。`location` 块的 `/ws` 部分指示 NGINX 仅代理 `/ws` 路径的 WebSocket 请求。
请注意,您需要根据您的情况进行更改。例如,您需要将 `server_name` 更改为您的域名,将 `proxy_pass` 更改为您的后端服务器的地址和端口。
阅读全文