nginxとApacheのgzip圧縮まわりの設定の違い
code: nginx.conf
server {
gzip on;
gzip_types
text/plain
text/css
text/xml
text/javascript
application/javascript
application/x-javascript
application/xml
application/xml+rss
application/json
image/svg+xml;
gzip_min_length 1k;
gzip_vary on;
gzip_proxied any;
...
}
code:httpd.conf
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/javascript
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xml+rss
AddOutputFilterByType DEFLATE application/json
AddOutputFilterByType DEFLATE image/svg+xml;
</IfModule>
table:違い
nginx Apache
text/html 不要 必要
gzip_min_length*1 定番は1k 設定項目なし
*1 gzip_min_length
圧縮対象とするlengthの閾値
lengthが小さい場合、圧縮しない方が転送効率がいい
圧縮後の方がサイズが増える
圧縮/解凍のオーバーヘッドが大きい
圧縮するコンテンツの内容や圧縮率などにも左右されるが、だいたい1kぐらいが目安らしい