HTTP/2.0をサポートするTomcatの最低バージョンは誰か知っていますか?私は彼らのサイトのいたるところを見てきましたが、これに関する詳細を見つけることができません。
私はJettyのHTTP/2実装者であり、HTTP/2を実装する他のプロジェクトにも注目しています。
TomcatのMark Thomasには Tomcat 9のHTTP/2のサポートの概要 があります。
2017年1月更新:Tomcat 8.5はHTTP/2をサポートします@ joe-aldrichの回答を参照 https://stackoverflow.com/a/37889873/ 2027465
サーブレット4.0がターゲットHTTP/2サポートを持ち、HTTP/2サポートにはJDKのALPNサポート(これも私が関与している)が必要であり、JDKのALPNサポートはJDK 9に予定されていることを考慮するとすべてが実現するまでには、おそらく長い時間がかかるでしょう。
ただし、他のサーブレットコンテナはすでにHTTP/2サポートを提供していることに注意してください。
Jetty 9.3. は完全かつ堅牢であり、 HTTP/2のサポート はクライアントとサーバーです。私たちは何ヶ月も前から自分のウェブサイトでHTTP/2を実行してきましたが、HTTP/2サポートの生産準備は整っていると考えています。 JettyのHTTP/2 Push APIは、Servlet 4.0に含めることを検討しています。 HTTP/2プッシュは、(サーブレットフィルターを介して)透過的な方法でJettyにデプロイされたアプリケーションですでに利用可能です。
ndertow にはHTTP/2の実装もあります。
Netty もありますが、サーブレットAPIに基づいていません。
Tomcat 8.5は、Tomcat 9からバックポートされた機能とともにリリースされており、HTTP/2サポートが含まれています。
Tomcatの最新バージョン( バージョン9 )は、HTTP/2を完全にサポートしています。ただし、すべての主要なブラウザーは HTTP/2 over TLS のみを実装しているため、これを許可するにはTomcatを構成する必要があります。この記事では TomcatでのTLS構成 について説明しますが、概要は次のとおりです。
conf/server.xml
ファイルを作成し、次の構成変更を行います。
<Connector port="8443"
protocol="org.Apache.coyote.http11.Http11AprProtocol"
maxThreads="150" SSLEnabled="true">
<UpgradeProtocol className="org.Apache.coyote.http2.Http2Protocol"/>
<SSLHostConfig honorCipherOrder="false">
<Certificate certificateKeyFile="conf/ca.key"
certificateFile="conf/ca.crt"/>
</SSLHostConfig>
</Connector>