HTTP2 without ALPN is not quite HTTP2

So followup post, I was having some issues with http2 browser support since I was missing ALPN, so after a lot of trial and error, here’s what I ended up with.

Partially followed https://fak3r.com/2015/09/29/howto-build-nginx-with-http-2-support/ with a few differences.

I installed openssl1.0.2h from this ppa:

https://launchpad.net/~ondrej/+archive/ubuntu/php

And then used nginx 1.11.1 from http://nginx.org/download/

and also grabbed the headers-more-nginx-module-0.30 and ngx_pagespeed-master off git.

Once I upgraded openssl to version 1.0.2 I uninstalled nginx from ubuntu and built / installed from source, With IPv6 support.

./configure \
    --prefix=/usr/share/nginx \
    --sbin-path=/usr/sbin/nginx \
    --conf-path=/etc/nginx/nginx.conf \
    --pid-path=/var/run/nginx.pid \
    --lock-path=/var/lock/nginx.lock \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --user=www-data \
    --group=www-data \
    --without-mail_pop3_module \
    --without-mail_imap_module \
    --without-mail_smtp_module \
    --without-http_fastcgi_module \
    --without-http_uwsgi_module \
    --without-http_scgi_module \
    --without-http_memcached_module \
    --with-http_ssl_module \
    --with-http_stub_status_module \
    --with-http_gzip_static_module \
    --with-http_v2_module \
    --with-ipv6 \
    --add-module=/temp/build/headers-more-nginx-module-0.30 \
    --add-module=/temp/build/ngx_pagespeed-master

and of course

make
sudo make install

Say Something Nice