【发布时间】:2020-11-30 09:32:18
【问题描述】:
情况如下: 我们的客户想要支持一些旧的 ios mac 系统,它使用的网络库不支持 ALPN。我们的服务器设置为只接受 gRPC 请求,因此服务器不需要接受 HTTP1.1 请求。
那么如何禁用 Nginx 接受 HTTP1.1 请求,只启用 HTTP2 支持并跳过 ALPN?
我尝试让 Nginx 默认支持 http2,但它仍然涉及 ALPN 过程。
【问题讨论】:
情况如下: 我们的客户想要支持一些旧的 ios mac 系统,它使用的网络库不支持 ALPN。我们的服务器设置为只接受 gRPC 请求,因此服务器不需要接受 HTTP1.1 请求。
那么如何禁用 Nginx 接受 HTTP1.1 请求,只启用 HTTP2 支持并跳过 ALPN?
我尝试让 Nginx 默认支持 http2,但它仍然涉及 ALPN 过程。
【问题讨论】:
似乎 nginx 是基于 ALPN 的 http2,所以没有解决方法。
我们的客户要求仅提供 http2 服务,因为他们使用的其他产品正在使用带有特使代理的 gRPC。 Envoy 似乎有能力在没有 alpn 的情况下提供仅 http2 的服务,但有待于找出原因(因为文档没有明确说明)
【讨论】: