Nginx + CloudFrontでgzipを有効にする
Nginx + CloudFrontでgzipを有効にするには以下の手順で設定可能
目次
Nginx側
事前チェック
Nginxのインストール時にオプションに–with-http_gzip_static_moduleを入れてインストールしておかなければならない
–with-http_gzip_static_moduleが入っているかは
nginx -V
で確認することができる。
コード追加
/etc/nginx/nginx.confのhttp部分に以下のコードを追加する
http{ .... gzip on; gzip_http_version 1.0; gzip_vary on; gzip_comp_level 6; gzip_types text/plain text/xml text/css text/javascript application/xhtml+xml application/xml application/rss+xml application/atom_xml application/javascript application/x-javascript application/x-httpd-php; gzip_disable "MSIE [1-6]\."; gzip_proxied any; }
gzip_proxied any;
が重要
入力したらnginxを再起動
CloudFront側
それぞれのBeheiverで一番下の「Compress Objects Automatically」をYesに変更する
gzip確認
gzipで転送されているか確認する方法はChromeのdeveloper機能でNetwork→Header部分のResponse-headerに
content-encoding:gzip
と表示されていればOK、
もしくはサーバ側で
curl -I -H 'Accept-Encoding: gzip,deflate' [確認したいURL]
を実行し、
Content-Encoding: gzip
と表示されればOK。