Keep-Alive
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
HTTP Keep-Alive
响应标头和请求标头允许消息发送者提示连接的状态,还可以用来设置超时时长和最大请求数。
备注:
要使得 Keep-Alive
有效,消息必须包含 Connection: keep-alive
标头。
HTTP/1.0 默认在每次请求/响应交互后关闭连接,因此 HTTP/1.0 中的持久连接必须经过明确协商。一些客户端和服务器可能希望与以前的持久连接方式兼容,可以使用 Connection: keep-alive
请求标头来实现这一点。连接的其他参数可通过 Keep-Alive
标头请求。
警告: HTTP/2 和 HTTP/3 禁止使用特定于连接的标头字段,如 Connection
和 Keep-Alive
。Chrome 浏览器和 Firefox 浏览器在 HTTP/2 响应中忽略了它们,但 Safari 浏览器符合 HTTP/2 规范要求,不会加载任何包含它们的响应。
语法
http
Keep-Alive:
指令
示例
包含 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=200
Last-Modified: Mon, 25 Jul 2016 04:32:39 GMT
Server: Apache
(body)
规范
Specification |
---|
HTTP/1.1 # compatibility.with.http.1.0.persistent.connections |