What is the HTTP/1.1 equivalent of ":scheme" in HTTP/2 and HTTP/3?


HTTP/2 and HTTP/3 have defined ":scheme" to carry the scheme information of
target URI, however I haven't seen any fields in HTTP/1.1 that carry the
same information. RFC 9112 (HTTP/1.1) says:

If the server's configuration provides for a fixed URI scheme, or a scheme
is provided by a trusted outbound gateway, that scheme is used for the
target URI. This is common in large-scale deployments because a gateway
server will receive the client's connection context and replace that with
their own connection to the inbound server. Otherwise, if the request is
received over a secured connection, the target URI's scheme is "https"; if
not, the scheme is "http".

It says "or a scheme is provided by a trusted outbound gateway", but how do
gateways provide the scheme information to backend servers? I know HTTP/1.1
absolute-form can carry this information, is it the suggested way? Or are
there any registered fields?


Best regards,
Jingcheng Zhang
Beijing, China

Received on Tuesday, 21 March 2023 09:28:04 UTC