概要 以前NginxでHTTP/2 - Carpe Diemを書きましたが最近改めて確認してみると のようにHTTP/2が使えていないことが分かりました。今回はこの問題に対応します。 原因 TLS上でのプロトコルのネゴシエーションは以下の2つがあるのですが、 ネゴシエーション ポイント NPN 使用出来るプロトコルのリストをサーバが提示しクライアントが選択する ALPN 使用出来るプロトコルのリストをクライアントが提示しサーバが選択する SPDYがまだ使えていた時にはChromeもNPNに対応していたのですが、HTTP/2に本格的に対応してからALPNのみにしか対応しなくなりました。またAndroidのHTTPクライアントである github.com もALPNでないといけないので、ネイティブアプリでHTTP/2を扱う上でやはりALPNに対応する必要があります。 ALPNに対応するにはOp