以前我在apache httpd2.4.18上使用http / 2.0。今天我升级到httpd2.4.25并发现我的所有网页都在我的Firefox v53.0上使用Upgrade: "h2"
响应头回到了http / 1.1。我已经尝试了Browser won't upgrade to H2 altough "Upgrade" headers are sent但它没有用。
resopnse头是:
Date: Tue, 13 Jun 2017 04:40:05 GMT
Server: Apache/2.4.25 (Red Hat) OpenSSL/1.0.1e-fips mod_fcgid/2.3.9 Phusion_Passenger/5.0.18 mod_wsgi/4.5.7 Python/2.6
Upgrade: h2
Connection: Upgrade, Keep-Alive
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 3489
Keep-Alive: timeout=5, max=100
Content-Type: text/html; charset=UTF-8
为什么这样?我没有更改我的httpd服务器的任何配置。
答案 0 :(得分:1)
这与您的升级无关,而且在您的2.4.18设置下也无法正常工作。
原因不适合你Firefox 53 has removed HTTP/2 Support over the older NPN method现在要求ALPN详见release notes。
这使其内联到Chrome which has already dropped NPN support。
不幸的是,这意味着,您现在必须使用openssl 1.0.2或更高版本作为1.0.1,您使用的不支持ALPN。然而,这有点棘手,因为Red Hat没有通过官方回购提供晚于1.0.1e的任何内容。 RedHat 7.4 is due to get it hopefully但在此之前,您的选择是使用非官方的回购,或者从源代码安装(我已经blog post了解如何做后者)。我想你已经做了一些这样的事情来获得Apache 2.4.25,因为它不是通过官方回购在Red Hat上提供的。