1.9.5でHTTP2がサポートされました。Nginx 1.9.5 でHTTP2を試そう!(2015/0923)
nginx 1.9.3のHTTP/2アルファパッチが公開されました。
https://www.nginx.com/blog/early-alpha-patch-http2/
基本的には書いてあるとおりにヤレば簡単に動作します。
ubuntu14.04で試したがすんなり起動できた
必要な物を入れる
いつもの
sudo apt-get install build-essential libc6 libpcre3 libpcre3-dev libpcrecpp0 libssl0.9.8 libssl-dev zlib1g zlib1g-dev lsb-base
ダウンロード
# nginx本体 wget http://nginx.org/download/nginx-1.9.3.tar.gz tar zxvf nginx-1.9.3.tar.gz #パッチ cd ./nginx-1.9.3 wget http://nginx.org/patches/http2/patch.http2-v2_1.9.3.txt patch -p1 --dry-run < patch.http2.txt patch -p1 < patch.http2.txt cd ../ # openssl wget https://www.openssl.org/source/openssl-1.0.2d.tar.gz tar zxvf ./openssl-1.0.2d.tar.gz
ビルド
cd ./nginx-1.9.3
./configure --with-http_ssl_module \
--with-http_v2_module \
--with-debug \
--with-openssl=/path/to/openssl-1.0.2
make
conf
/usr/local/nginx/conf/nginx.conf
証明書などは良しなに
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
client_max_body_size 20M;
server {
listen 443 ssl http2 ;
server_name localhost;
ssl_certificate /home/vagrant/server.crt;
ssl_certificate_key /home/vagrant/server.key;
location / {
root /usr/share/www;
}
}
}
起動
sudo ./nginx-1.9.3/objs/nginx
確認
chromeからアクセスし、「chrome://net-internals/#http2」より
t=2230 [st= 0] HTTP2_SESSION_SEND_HEADERS
--> fin = true
--> :authority: localhost
:method: GET
:path: /
:scheme: https
accept-encoding: gzip, deflate, sdch
(略)
--> priority = 0
--> stream_id = 3
--> unidirectional = false
t=2237 [st= 7] HTTP2_SESSION_RECV_HEADERS
--> fin = false
--> :status: 200
accept-ranges: bytes
content-length: 5
content-type: text/html
date: Thu, 06 Aug 2015 13:47:26 GMT
etag: "55c36093-5"
last-modified: Thu, 06 Aug 2015 13:26:43 GMT
server: nginx/1.9.3
--> stream_id = 3
良さそう