nginxのgzip圧縮を有効にする

PageSpeed Insightsでサイトの読み込み速度のテストを行っていたら、「テキスト圧縮の有効化」の項目が上位にあった。nginxだとnginx.confを修正して再起動することで簡単に、各種ファイルの圧縮が可能だ。
設定方法
1 |
#vi etc/nginx/nginx.conf |
nginx.confの中の、
1 |
#gzip on; |
#を消して、gzipを有効にする。以下のように各種パラメータを設定する。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
#コンテンツをgzip圧縮する gzip on; #Vary:Accept-Encodingを応答ヘッダへ付与 gzip_vary on; #全てのプロキシされたリクエストに圧縮を有効 gzip_proxied any; #圧縮するファイルの最小限のサイズ(デフォルトは20バイト) gzip_min_length 1024; #圧縮レベルを1~9の間で設定(デフォルトは1) gzip_comp_level 6; #圧縮するMIMEタイプ(メディアの種類) gzip_types text/plain text/xml text/css text/javascript image/gif image/png image/jpeg application/javascript application/x-javascript application/json application/font-woff application/font-tff application/octet-stream; |
text/htmlはデフォルトで常に圧縮する設定になっているので、指定しない(指定すると重複してエラーになる)。application/octet-streamは「その他のアプリケーションファイル」を示している。
1 |
#service nginx reload |
nignxを再読み込みして完了。


PageSpeed Insightsでモバイル、パソコン共に10点以上改善したのを確認できた。モバイルは画像が多すぎて、スコアが伸びないようだ。
参考
コンテンツキャッシュとVaryヘッダとnginx – Qiita
よく分からないけど、このブログの表示速度が早くなったのね!
ソウデスガ、表示速度が遅い原因も我々だということが判明しまシタ・・・。
えー・・・。