参数说明
语法: keepalive_timeout timeout [header_timeout]
默认值: keepalive_timeout 75s;
使用字段: http, server, location
参数:
参数1指定了客户端与服务器 keep-alive的超时时间,值为0将禁用 keep-alive功能。
参数2(可选)在HTTP响应头”Keep-Alive: timeout=time” 字段中设置一个值。
HTTP 是一种无状态协议,客户端向服务器发送一个 TCP 请求,服务端响应完毕后断开连接。
如果客户端向服务器发送多个请求,每个请求都要建立各自独立的连接以传输数据。
HTTP 有一个 KeepAlive 模式,它告诉 webserver 在处理完一个请求后保持这个 TCP 连接的打开状态。若接收到来自客户端的其它请求,服务端会利用这个未被关闭的连接,而不需要再建立一个连接。
KeepAlive 在一段时间内保持打开状态,它们会在这段时间内占用资源。占用过多就会影响性能。
Nginx 使用 keepalive_timeout 来指定 KeepAlive 的超时时间(timeout)。指定每个 TCP 连接最多可以保持多长时间。Nginx 的默认值是 75 秒,有些浏览器最多只保持 60 秒,所以可以设定为 60 秒。若将它设置为 0,就禁止了 keepalive 连接。
参考文献:
https://cloud.tencent.com/developer/article/1541434
https://blog.csdn.net/weixin_42350212/article/details/81123932