在我的網絡服務器上,我試圖讓H2(http2)工作。通過「ondrej」存儲庫安裝Apache 2.4.20。我在Debian 8和Ubuntu 14.04服務器上測試過,但我仍然遇到同樣的問題。我運行了OpenSSL 1.0.2和SSL虛擬主機。瀏覽器不會升級到H2雖然「升級」標題發送
奇怪的是升級頭(連接:升級和升級:h2)被髮送。當我做一些外部服務器測試時,我得到的答案是h2在ALPN支持下正常運行。但問題是我測試的瀏覽器(Win7上的Chrome和FireFox)不會升級到H2。
我注意到缺少的一件事是HTTP2-Settings標頭,但是在任何Apache文檔中找不到任何東西來實現這一點,或者強制Apache發送這個標頭。
很遺憾,我無法使用cUrl進行測試,因爲我有權訪問的服務器不支持任何具有http2支持的版本。
我的SSL虛擬主機設置:
Protocols h2 http/1.1
SSLEngine On
SSLCACertificateFile xxxxxxxx
SSLProtocol all -SSLv2 -SSLv3
SSLCompression Off
SSLHonorCipherOrder On
SSLCipherSuite "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH+aRSA+RC4 EECDH EDH+aRSA RSA+AES RC4 !aNULL !eNULL !LOW !3DES !MD5 !EXP !PSK !SRP !DSS !RC4 !AES128"
Header always set Strict-Transport-Security "max-age=15552000;includeSubDomains"
SSLCertificateFile xxxxxxxx
SSLCertificateKeyFile xxxxxxxx
我與prefork的模塊,而不是與工人運行Apache。
誰能告訴我什麼是錯的?
我在安裝mod_http2後出現同樣的症狀。在我的情況下,也切換到使用php-fpm(如此處所述:https://techwombat.com/enable-http2-apache-ubuntu-16-04/)最終爲我解決了它。只要把它扔到那裏,以防其他人來這裏! –