I'm attempting to deploy http2 with nginx 1.9.6 using teward's Ubuntu packages (https://launchpad.net/~nginx/+archive/ubuntu/development). I've got openssl 1.0.2d on both client and server and I'm testing with Chrome Canary and Firefox 41.0.2. The SSL config has a Qualys A+ rating and works perfectly with the previous SPDY config in nginx 1.9.4. The only config I changed in the nginx upgrade is 'spdy' to 'http2' in the listen directive. I can see that Firefox is negotiating and reporting a successful h2 connection, but Chrome is not. Testing with openssl shows me that it's using NPN but not ALPN, so I assume that Chrome Canary has already dropped NPN support and is thus unable to negotiate h2.
With NPN: `echo | openssl s_client -nextprotoneg h2 -connect www.synchromedia.co.uk:443`
Next protocol: (1) h2
No ALPN negotiated
With ALPN: `echo | openssl s_client -alpn h2 -connect www.synchromedia.co.uk:443`
No ALPN negotiated
Why would this be happening? Do I need to do something else to enable ALPN in nginx?