nginxのgzip圧縮を有効にする
PageSpeed Insightsでサイトの読み込み速度のテストを行っていたら、「テキスト圧縮の有効化」の項目が上位にあった。nginxだとnginx.confを修正して再起動することで簡単に、各種ファイルの圧縮が可能だ。
設定方法
#vi etc/nginx/nginx.conf
nginx.confの中の、
#gzip on;
#を消して、gzipを有効にする。以下のように各種パラメータを設定する。
#コンテンツを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は「その他のアプリケーションファイル」を示している。
#service nginx reload
nignxを再読み込みして完了。
PageSpeed Insightsでモバイル、パソコン共に10点以上改善したのを確認できた。モバイルは画像が多すぎて、スコアが伸びないようだ。
参考
コンテンツキャッシュとVaryヘッダとnginx – Qiita
よく分からないけど、このブログの表示速度が早くなったのね!
ソウデスガ、表示速度が遅い原因も我々だということが判明しまシタ・・・。
えー・・・。