We now have http/2 support again

The CoG web server used to offer SPDY support, but I had to kill it when I added in HAProxy as our SSL termination layer. SPDY was a draft protocol and at the time it was impossible to make it work properly with the stack I wanted to run—I basically had to make the choice between all-HTTPS and SPDY, and I picked all HTTPS.

But that was a few years ago and times change. SPDY was absorbed into the HTTP/2 spec, and the various pieces of the CoG/Bigdino web stack eventually evolved support for it. Making it all work was still a giant pain in the ass, but after two days of screwing around with the config, I think it’s operational.

What does this mean for you? Well…it might mean some faster page loads, since HTTP/2’s big contribution is packaging lots of requests and responses together, thereby cutting down on overhead. It was also a pretty good learning exercise!

In any case, please do let me know if anything looks weird or broken.

(And if you think THIS was disruptive, just wait until I turn on public key pinning!!)

edit - huh, i take that back. Adding HPKP was easy. Just had to spend the last ~6 months reading about it and thinking about it and trying it and abandoning it before implementation. All that fretting made it relatively straightforward! :slight_smile: