nginxサーバにgzip圧縮を設定してみました。
画像、css、js、その他ファイルなどの静的コンテンツの容量を減らして、サーバのリクエスト量を減らしちゃうぜってやつです。
confファイルの設定
confファイルに以下のように書く。
nginx.confでもいいし、virtualhostを設定した別個のconfファイルでもOK。
各場所はserver{〜}の中。
server { gzip on; gzip_types image/png image/gif image/jpeg text/javascript text/css; gzip_min_length 1000; gzip_proxied any; gunzip on; }
それぞれの意味とか
gzip on;
まずはgzipを使えるようにする。
gzip_types image/png image/gif image/jpeg text/javascript text/css;
対象となるファイルの設定。
画像ファイル(png,gif,jpg)とjs、cssを対象にしました。
gzip_min_length 1000;
gzip化する画像の最低ファイル容量の指定。
もともと軽い画像だと、圧縮する方に時間がかかってしまい、結果として遅くなっちゃいます。
とりあえず1000で指定。
gzip_proxied any;
リクエストの種別にgzipするかを指定できる。
今回は全てのリクエストを対象にするので、anyを指定。
gunzip on;
gzipに対応していないブラウザ向けの処理。
設定後は再起動
sudo systemctl restart nginx