【Apache】gzipでデータを圧縮する設定方法(mod_deflate)

Apache

Apacheでgzipを使う設定にすることで、Apacheからクライアントに返すレスポンスの容量を小さくすることができます。

【Apache】gzipでデータを圧縮する設定方法(mod_deflate)

<IfModule mod_deflate.c>
  AddOutputFilterByType DEFLATE text/html text/plain text/css text/javascript
</IfModule>

gzipを使うには、mod_deflateを使います。
AddOutputFilterByTypeでMIMEタイプが一致したものに関して、レスポンスを送る前にDEFLATEというフィルターを通して圧縮されます。

上の設定を.htaccessに記述するだけで、htmlやcss、javascriptが圧縮されます。

レスポンス容量は検証ツールのNetworkタブのSizeの項目で確認できます。
gzipの圧縮がかかっている場合は、Response HeadersにContent-Encodingというパラメータがgzipとなります。
Accept-Encodingという項目でブラウザの読み込み可能な圧縮方法が表示されており、gzipがあれば、gzipと書かれています。
通常のブラウザであればgzipは対応しています。

圧縮レベルを調整する[DeflateCompressionLevel]

[DeflateCompressionLevel]を使うことで圧縮レベルを調整することができます。
コンテキストはサーバ設定ファイル, バーチャルホストです。

DeflateCompressionLevel 9

上のように記述します。
1 (低圧縮) から 9 (高圧縮) まであり、9に近づけば近づくほど圧縮率は高くなりますが、その分サーバーに負荷がかかります。

Apache

Posted by devsakaso