保持活动
Keep-Alive
通用头部允许发送方提示如何使用连接来设置超时和最大请求数。
注意:将 Connection
标头设置为“keep-alive”才能使此标头生效。
警告:连接特定的标头字段,如 Connection
和 Keep-Alive
在 HTTP/2 和 HTTP/3 中是被禁止的。Chrome 和 Firefox 在 HTTP/2 响应中会忽略它们,但 Safari 符合 HTTP/2 规范要求,不会加载任何包含它们的响应。
语法
http
Keep-Alive: parameters
指令
参数
-
逗号分隔的参数列表,每个参数由一个标识符和一个值组成,用等号 (
'='
) 分隔。以下标识符是可能的timeout
: 一个整数,表示主机允许空闲连接保持打开状态的时间(以秒为单位),然后关闭连接。如果主机没有发送或接收任何数据,则连接处于空闲状态。主机可以将空闲连接保持打开状态的时间超过timeout
秒,但主机应该至少尝试保持timeout
秒的连接。max
: 一个整数,表示在此连接关闭之前可以发送的最大请求数。除非为0
,否则对于非管道连接,此值将被忽略,因为在下一个响应中将发送另一个请求。HTTP 管道可以使用它来限制管道。
示例
包含 Keep-Alive
标头的响应
http
HTTP/1.1 200 OK
Connection: Keep-Alive
Content-Encoding: gzip
Content-Type: text/html; charset=utf-8
Date: Thu, 11 Aug 2016 15:23:13 GMT
Keep-Alive: timeout=5, max=1000
Last-Modified: Mon, 25 Jul 2016 04:32:39 GMT
Server: Apache
(body)
规范
规范 |
---|
HTTP/1.1 # compatibility.with.http.1.0.persistent.connections |
浏览器兼容性
BCD 表格仅在浏览器中加载