概要
Nginxが1.9.5からHTTP/2に対応しました。 ソースからmodule指定でビルドする必要もなく、mainlineの1.9.5をパッケージでインストールすれば使えます。
環境
- Ubuntu 14.04
- Nginx 1.9.5
Nginxインストール
バージョンを確認します。
$ nginx -v nginx version: nginx/1.9.5
大丈夫ですね。
SSL証明書の用意
SSLの設定を参照
/etc/nginxに以下のようにsslフォルダを作ってserver.key,server.crtを配置します。
└── ssl ├── server.crt └── server.key
conf設定
/etc/nginx/conf.dのdefault.confを編集します。
. ├── conf.d │ └── default.conf
以下のようにします。
ポイントはlistenのところにhttp2を入れることです。
server {
listen 80;
server_name localhost;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.example.com;
ssl on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE+RSAGCM:ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:!aNULL!eNull:!EXPORT:!DES:!3DES:!MD5:!DSS;
ssl_certificate /etc/nginx/ssl/server.crt;
ssl_certificate_key /etc/nginx/ssl/server.key;
location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
動作確認
自分のページにアクセスします。
https://www.example.com
ChromeではHTTP/2通信か簡単に調べられます。
chrome://net-internals/#http2
にアクセスして以下のようであればOKです。

以上、お疲れ様でした。