2017-07-19 60 views
1

我想使用带有HTTP 2.0的AWS Elastic Load Balancer(ELB)v2应用程序负载均衡器。我试图找出它是否支持在协议规范中被ALPN取代的Next Protocol Negotiation(NPN)。AWS Elastic Load Balancer(ELB)v2是否支持下一协议协商(NPN)

我需要NPN,因为我有一些较旧的Android客户端需要使用HTTP 2.0。 NGINX有能力打开NPN没有SPDY(我不需要SPDY,只是NPN)。由于ELB基于NGINX,我认为它可能启用。

翻阅ELB文档,我看不到提及ALPN或NPN。

回答

1

使用curl连接到应用程序负载平衡器实例显示它支持NPN和ALPN。

不使用任何选项:

$ curl --verbose -I --http2 https://example.com 2>&1 | grep ALPN 
* ALPN, offering h2 
* ALPN, offering http/1.1 
* ALPN, server accepted to use h2 

告诉卷曲明确不使用ALPN:

$ curl --no-alpn --verbose -I --http2 https://example.com 2>&1 | grep NPN 
* NPN, negotiated HTTP2 (h2) 

在这两种情况下,请求使用HTTP/2服务。

我针对一个应用程序负载平衡器进行了测试,该应用程序负载平衡器针对在端口80上运行nginx的新EC2实例(即,它不会影响后端支持的功能)。

+0

谢谢您好,先生,我非常感激。 –