爆速!nginxを1分でHTTP2対応

背景

手順

  • 手元の環境がMac OSで動いているサーバなので、Mac前提の設定です。
  • こちらのサービスをHTTP2化してみます。

NginxをHTTP2オプション付きでインストール(20秒)

% brew install nginx --devel --with-http2

もともとSSLで動いているサイトの設定にhttp2の設定を2つ追加するだけです。(30秒)

  • http2をlistenの部分に追加。
  • AESGCM:HIGHをssl_ciphersの先頭に追加。

以下に差分。

@@ -19,7 +19,7 @@ server {

# HTTPS server
server {
- listen 443 ssl;
+ listen 443 ssl http2;
server_name teraren.com;
root /Users/matsu/Sites/teraren.com/www/public/;
access_log /var/log/nginx/www.teraren.com main;
@@ -32,7 +32,7 @@ server {

ssl_prefer_server_ciphers on;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
- ssl_ciphers ECDHE+RSAGCM:ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:!aNULL!eNull:!EXPORT:!DES:!3DES:!MD5:!DSS;
+ ssl_ciphers AESGCM:HIGH:ECDHE+RSAGCM:ECDH+AESGCM:DH+AESGCM:ECDH+AES256:DH+AES256:ECDH+AES128:DH+AES:!aNULL!eNull:!EXPORT:!DES:!3DES:!MD5:!DSS;

try_files $uri @unicorn;

nginxを再起動(5秒)

% sudo brew services restart nginx

このプラグインを入れたChromeで確認。(5秒)
青い稲妻が表示されていれば、HTTP2で接続出来ていると言うことです。

chrome http2 nginx

まとめ


matsubokkuri

マインディアにてCTOをしています。

あわせて読みたい

コメントを残す