您可以将 Keep-Alive 与带有 HTTP 代理的 CONNECT 请求一起使用吗?
Can you use Keep-Alive with a CONNECT request with an HTTP proxy?
我知道使用 HTTP/1.1 代理,可以使用 Keep-Alive 来保持与代理以及从代理到远程服务器的持久连接,但我很好奇 if/how 适用于 HTTPS 连接。我知道要做到这一点,浏览器会向代理发送 CONNECT 请求以建立连接,然后开始使用 HTTPS 进行通信。我很好奇是否可以通过 http 代理将 Keep-Alive 与 HTTPS 结合使用。
简而言之,CONNECT 始终处于活动状态。
在HTTP中,“持久连接”是指在一对请求-响应之后持续存在的连接。但是 CONNECT 通过 代理建立了一个 隧道。代理甚至看不到通过该隧道发送的请求和响应(因为它们是加密的)。所以这个隧道无法不持久化。
当然,如果服务器(CONNECT 的目标)决定关闭连接,那么隧道也会被破坏。所以服务器必须支持持久连接(就像常规的非 TLS 代理一样)。
我知道使用 HTTP/1.1 代理,可以使用 Keep-Alive 来保持与代理以及从代理到远程服务器的持久连接,但我很好奇 if/how 适用于 HTTPS 连接。我知道要做到这一点,浏览器会向代理发送 CONNECT 请求以建立连接,然后开始使用 HTTPS 进行通信。我很好奇是否可以通过 http 代理将 Keep-Alive 与 HTTPS 结合使用。
简而言之,CONNECT 始终处于活动状态。
在HTTP中,“持久连接”是指在一对请求-响应之后持续存在的连接。但是 CONNECT 通过 代理建立了一个 隧道。代理甚至看不到通过该隧道发送的请求和响应(因为它们是加密的)。所以这个隧道无法不持久化。
当然,如果服务器(CONNECT 的目标)决定关闭连接,那么隧道也会被破坏。所以服务器必须支持持久连接(就像常规的非 TLS 代理一样)。