我可以在没有ALPN支持的情况下实现http / 2服务器吗?

时间:2015-08-21 03:47:35

标签: http2 http2-lawyers

通过这种方式,客户端可以在没有ALPN的情况下连接服务器并使用http / 2默认值。

这可能吗?

1 个答案:

答案 0 :(得分:6)

是的,这是可能的,但条件是严格的。

截至目前,浏览器并未实现HTTP / 2的明文通信,因此如果您使用浏览器,则问题的答案为否:如果您希望浏览器支持,则必须使用ALPN支持部署服务器能够连接。

另一方面,其他客户端(如Java客户端)可能能够使用明文HTTP / 2连接到服务器,因此对于这些类型的客户端,您的问题的答案是肯定的:您可以部署HTTP / 2服务器没有ALPN支持。

Jetty Project [免责声明,我是提交者]实现了支持这两种情况的Web服务器和servlet容器:您可以启用ALPN进行TLS(SSL)HTTP / 2通信,以便浏览器能够连接,您还可以启用explained here的明文HTTP / 2通信。另请参阅Jetty HTTP/2 documentation