来自具有提前 SSL 终止的浏览器的 HTTP2
HTTP2 from the browser with early SSL termination
我想设置我的网页以向 Jetty API 服务器发出 HTTP2 请求。我读到浏览器只会使用 "h2" 协议,即带有 TLS 的 HTTP2。但是,我的设置有一个 kubernetes 入口执行 SSL 终止,并将明文请求代理回 Jetty 服务器。困境是我不认为我想使用 Jetty 协商 "h2" 连接,因为那将需要该服务器上的 SSL 上下文。
我的问题是,此设置是否允许浏览器执行 HTTP2 请求?如果是这样,我需要在 Jetty 服务器上启用什么才能正确处理 HTTP2 请求?
您可以将 Jetty 配置为提供明文 HTTP/2(也称为 h2c
),这样您的设置将是:
browser -- h2 --> kubernetes tls termination -- h2c --> Jetty
为了使用明文设置 Jetty HTTP/2,如果您将 Jetty 用作独立服务器,则只需启用 http2c
模块,请参阅 http://www.eclipse.org/jetty/documentation/current/http2-enabling.html。
或者,如果您使用的是嵌入式 Jetty,您可以查看 this example。
我想设置我的网页以向 Jetty API 服务器发出 HTTP2 请求。我读到浏览器只会使用 "h2" 协议,即带有 TLS 的 HTTP2。但是,我的设置有一个 kubernetes 入口执行 SSL 终止,并将明文请求代理回 Jetty 服务器。困境是我不认为我想使用 Jetty 协商 "h2" 连接,因为那将需要该服务器上的 SSL 上下文。
我的问题是,此设置是否允许浏览器执行 HTTP2 请求?如果是这样,我需要在 Jetty 服务器上启用什么才能正确处理 HTTP2 请求?
您可以将 Jetty 配置为提供明文 HTTP/2(也称为 h2c
),这样您的设置将是:
browser -- h2 --> kubernetes tls termination -- h2c --> Jetty
为了使用明文设置 Jetty HTTP/2,如果您将 Jetty 用作独立服务器,则只需启用 http2c
模块,请参阅 http://www.eclipse.org/jetty/documentation/current/http2-enabling.html。
或者,如果您使用的是嵌入式 Jetty,您可以查看 this example。