概要
SPDYはGoogleがWebの表示を高速化するために開発した、新しいプロトコルです。
導入の注意として
- Apacheでは現在
2.2.x
でしか対応してないので、2.4.x
の場合ダウングレードする必要がある - Nginxでは
1.5.10
以降じゃないとデフォルトで入っていないので、自前でコンパイルする必要がある。 - OpenSSLは
1.0.1
以上の必要がある。
と言った制約があります。今回は面倒なのでNginx 1.5.10
以上のバージョンで試します。
環境
- Ubuntu 14.04
- OpenSSL 1.0.1f
- Nginx 1.7.8
事前準備
をあらかじめやっておいてください。
設定
$ cd /etc/nginx/conf.d
SSLの例があるのでコピーします。
$ sudo cp example_ssl.conf ssl.conf
コメントアウトしてあるので、アンコメントします。
$ sudo vim ssl.conf
server { listen 443 ssl; server_name localhost; ssl_certificate /etc/nginx/cert.pem; ssl_certificate_key /etc/nginx/cert.key; ssl_session_cache shared:SSL:1m; ssl_session_timeout 5m; ssl_ciphers HIGH:!aNULL:!MD5; ssl_prefer_server_ciphers on; location / { root /usr/share/nginx/html; index index.html index.htm; } }
SSL証明書の位置が違うので、それを変更します。
ssl_certificate /etc/nginx/cert.pem; ssl_certificate_key /etc/nginx/cert.key; ↓ ssl_certificate /etc/ssl/private/server.crt; ssl_certificate_key /etc/ssl/private/server.key;
SPDYの設定を追加します。spdy
をつけるだけです。
listen 443 ssl; ↓ listen 443 ssl spdy;
シンタックスチェックをします。
$ sudo nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
大丈夫なので再起動します。
$ sudo service nginx restart
動作確認
spdy indicatorというchrome extensionをインストールしているとSPDY対応かどうかわかるので入れてください。
導入していると以下の用に表示されます。
この状態でNginxのページをHTTPSで開いてみましょう。以下のように表示されたら成功です。