Forum Moderators: phranque

Message Too Old, No Replies

Check your HTTP/2: Google Chrome has dropped NPN support

         

robzilla

4:05 pm on Jul 30, 2016 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



I was trying to figure out why my site's resources, viewed from Chrome's Developer Tools, weren't being downloaded in parallel as you would expect with HTTP/2 enabled. As it turns out, when Google released version 51 of Chrome on May 25, they dropped support for Next Protocol Negotiation (NPN) [developers.google.com] in favor of Application-Layer Protocol Negotiation (ALPN). They're both TLS extensions, but NPN belonged to SPDY, which was also dropped with this release.

For HTTP/2 to work on Chrome 51 and newer, your web server will need to make use of, or be compiled against, a version of OpenSSL that supports ALPN, which was only added to OpenSSL in version 1.0.2. Even reasonably modern distributions of Linux like CentOS 6 and 7, Ubuntu 14.04 and Debian 8.0 don't ship with that. And without ALPN support, Chrome will fall back to HTTP/1. Other browsers are likely to follow at some point.

I was already used to compiling my web server software (nginx) from source, and could fairly easily resolve this by downloading OpenSSL 1.0.2h and compiling against that, so it's working again. Just goes to show HTTP/2, its many advantages [webmasterworld.com] aside, is still a tricky beast.

Hope this helps someone!

keyplyr

7:23 am on Jul 31, 2016 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member Top Contributors Of The Month



Thanks robzilla, this gives me some talking points with my server admin.