Connection
The Connection
general header controls whether the
network connection stays open after the current transaction finishes. If the value sent
is keep-alive
, the connection is persistent and not closed, allowing for
subsequent requests to the same server to be done.
Warning: Connection-specific header fields such as
Connection
and Keep-Alive
are prohibited
in HTTP/2 and
HTTP/3. Chrome and
Firefox ignore them in HTTP/2 responses, but Safari conforms to the HTTP/2
spec requirements and does not load any response that contains them.
All hop-by-hop headers used by the message - including standard hop-by-hop headers (Keep-Alive
,
Transfer-Encoding
, TE
, Connection
,
Trailer
, Upgrade
,
Proxy-Authorization
and Proxy-Authenticate
) - must be listed in the Connection
header, so that the first proxy knows it has to consume them and not forward them
further.
Header type | Request header, Response header |
---|---|
Forbidden header name | yes |
Syntax
http
Connection: keep-alive
Connection: close
Directives
close
-
Indicates that either the client or the server would like to close the connection. This is the default on HTTP/1.0 requests.
- any comma-separated list of HTTP headers [Usually
keep-alive
only] -
Indicates that the client would like to keep the connection open. Keeping a connection open is the default on HTTP/1.1 requests. The list of headers are the name of the header to be removed by the first non-transparent proxy or cache in-between: these headers define the connection between the emitter and the first entity, not the destination node.
Specifications
Specification |
---|
HTTP Semantics # field.connection |
Browser compatibility
BCD tables only load in the browser