我有一个仅支持 HTTP/1 协议的旧版客户端应用程序。
该应用程序访问的部分服务器不再支持 HTTP/1 协议,因为它们已迁移到 HTTP/2 协议。
是否可以使用 NGINX 等代理应用程序将客户端 HTTP/1 发出的请求转换为服务器 HTTP/2?
答案1
我相信应该可以使用 apache mod_proxy_http2 https://httpd.apache.org/docs/trunk/mod/mod_proxy_http2.html
来自文档
mod_proxy_http2 仅支持 HTTP/2,不提供任何对 HTTP/1.1 的降级。这意味着后端需要支持 HTTP/2,因为不会使用 HTTP/1.1。
mod_proxy_http2 可处理使用 HTTP/1.1 或 HTTP/2 的传入前端请求。在这两种情况下,只要可能(即当连接可重复使用时),代理到同一后端的请求都会通过单个 TCP 连接发送。