ws的超时setKeepaliveTimeout(60*60*1000)直接连接可以保持一个小时,通过nginx代理则只能保持1分钟。请问各位大佬,该如何设置?
时间: 2024-04-16 15:24:06 浏览: 124
Nginx的超时timeout配置详解
5星 · 资源好评率100%
您可以尝试在Nginx配置中设置proxy_read_timeout参数来延长连接超时时间。proxy_read_timeout参数定义了Nginx代理服务器接收响应的超时时间。
您可以将proxy_read_timeout设置为一个较长的时间,例如60分钟(即3600秒),以与ws的超时时间保持一致。在您的Nginx配置文件中添加以下行:
```
location / {
proxy_pass http://your_upstream;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_read_timeout 3600s;
}
```
将"your_upstream"替换为您的上游服务器地址。通过这样的配置,Nginx将会在60分钟后才会超时关闭与上游服务器的连接,与ws的超时时间保持一致。
请注意,您还需要确保您的上游服务器(即ws服务器)也配置了足够长的超时时间以保持连接活动。
阅读全文