Nginx为dav_methods设置超时



我有一个Nginx实例,我用它作为Bazel缓存,配置如下。我想为PUT(dav_methods(请求设置一个较低(4秒(的超时时间。

http {
...
# request timed out
client_body_timeout 2;
client_header_timeout 2;
# server will close connection
keepalive_timeout 5;
send_timeout 1;
gzip on;
server {
listen 80 default_server;
server_name _;
location ~ "<my regex>" {
root <my dir>;
dav_methods PUT;
limit_except PUT GET { deny all; }
create_full_put_path on;
}
}
}

使用上面的配置。我从未见过GET请求响应时间超过2秒,但PUT请求有时需要30-80秒才能超时。

我是不是错过了一个场景?

这可能会帮助您https://www.nginx.com/blog/tuning-nginx/

特别是限制部分,

您可以设置各种限制,以帮助防止客户端消费资源过多,可能会对系统性能产生不利影响以及安全性和用户体验。

如果您使用代理,这些可能会有所帮助

fastcgi_read_timeout 3600s;
proxy_connect_timeout       600;
proxy_send_timeout          600;
proxy_read_timeout          600;
send_timeout                600;

https://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_read_timeout

https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_connect_timeout

https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_read_timeout

https://nginx.org/en/docs/http/ngx_http_core_module.html#send_timeout

相关内容

  • 没有找到相关文章

最新更新