2015-06-15 10 views
32

क्या किसी को पता है कि टोमकैट का निम्नतम संस्करण क्या है जो HTTP/2.0 का समर्थन करता है? मैं अपनी साइट पर हर जगह देख रहा हूं और मुझे इसके बारे में कोई जानकारी नहीं मिल रही है।HTTP/2.0 के लिए टोमकैट समर्थन?

उत्तर

61

मैं जेटी में HTTP/2 कार्यान्वयनकर्ता हूं, और मैं HTTP/2 को लागू करने वाली अन्य परियोजनाओं को देखता हूं।

टॉमकैट के मार्क थॉमस में outlined support for HTTP/2 for Tomcat 9 है।

अद्यतन जनवरी 2017: बिलाव 8.5 का समर्थन करता है HTTP/2 को देखने @ जो-एल्ड्रिच जवाब https://stackoverflow.com/a/37889873/2027465

यह देखते हुए कि सर्वलेट 4.0 लक्ष्य HTTP/2 समर्थन के रूप में करने के लिए जा रहा है, और कहा कि HTTP/2 समर्थन जेडीके (जिसमें मैं भी शामिल हूं) में एएलपीएन समर्थन की आवश्यकता है, और जेडीके में एएलपीएन समर्थन जेडीके 9 के लिए निर्धारित है, यह शायद सभी भौतिकताओं से पहले लंबे समय तक होने जा रहा है।

हालांकि, ध्यान रखें कि अन्य सर्वलेट कंटेनर पहले ही HTTP/2 समर्थन प्रदान करते हैं।

Jetty 9.3.0 में पूर्ण, मजबूत, support for HTTP/2, क्लाइंट और सर्वर है। हम कई महीनों के लिए हमारी वेबसाइट पर HTTP/2 चला रहे हैं, और हम HTTP/2 समर्थन उत्पादन तैयार मानते हैं। जेटी के HTTP/2 पुश एपीआई को सर्वलेट 4.0 में शामिल करने के लिए विचार किया जा रहा है। HTTP/2 पुश पहले से ही जेटी को एक पारदर्शी तरीके से (एक सर्वलेट फ़िल्टर के माध्यम से) पर तैनात अनुप्रयोगों के लिए उपलब्ध है।

Undertow में HTTP/2 के लिए भी कार्यान्वयन है।

Netty में भी एक है, लेकिन यह सर्वलेट एपीआई पर आधारित नहीं है।

+0

टोमकैट के साथ HTTP/2 का उपयोग करने के लिए आपको ऊपर दिए गए लिंक में उल्लिखित HTTPS को सक्षम करना होगा। यह कैसे करें इसे करने के बारे में एक सरल मार्गदर्शिका यहां दी गई है: https://readlearncode.com/configure-tomcat-9-for-http2/ – Alex

+0

मैं वसंत बूट एम्बेडेड टॉमकैट में एच 2 को सक्षम करने की कोशिश कर रहा हूं। मेरे पास HTTPS और addUpgradeProtocol (नया HTTP2Protocol()) है, हालांकि मुझे हमेशा मिलता है ... कनेक्टर जो ALPN का समर्थन नहीं करता है, क्या मुझे एक नया प्रश्न खोलना चाहिए? – lrn2prgrm

20

टॉमकैट 8.5 को टॉमकैट 9 से बैक-पोर्ट की गई सुविधाओं के साथ रिलीज़ किया गया है और इसमें HTTP/2 समर्थन शामिल है।

+0

AFAIK, टोमकैट 8.5 HTTP/2 का समर्थन टॉमकैट मूल पर आधारित है। –

+0

एनआईओ या एनआईओ 2 कनेक्टर के साथ टॉमकैट 8.5 में एच 2 का उपयोग करने के लिए अभी भी टीएलएस के लिए ओपनएसएसएल का उपयोग करने की आवश्यकता है। हालांकि, टॉमकैट 8.5 स्पष्ट टेक्स्ट एच 2 सी का भी समर्थन करता है जिसे ओपनएसएसएल के लिए टॉमकैट मूल की आवश्यकता नहीं होती है (हालांकि ब्राउज़र ने वर्तमान में एच 2 सी समर्थन को लागू नहीं किया है)। –

+0

देशी? क्या इसका मतलब यह है कि वसंत बूट पर एम्बेडेड टॉमकैट http2 वितरित करने में सक्षम नहीं होगा? – lrn2prgrm

6

टोमकैट का नवीनतम संस्करण (version 9) पूरी तरह से HTTP/2 का समर्थन करता है। हालांकि, चूंकि सभी प्रमुख ब्राउज़र केवल HTTP/2 over TLS को लागू करते हैं, इसलिए आपको इसे अनुमति देने के लिए टॉमकैट को कॉन्फ़िगर करना होगा। यह आलेख TLS configuration in Tomcat बताता है, लेकिन यहां सारांश है।

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> 
संबंधित मुद्दे