apacheでgzip圧縮の設定

いろいろ方法があるようだけれど
シンプルなこちらを採用!

apacheのhttpdのconfファイルに設定したよ

.htaccessファイルでは
DeflateCompressionLevel
を設定できないようなので注意!

    <IfModule mod_deflate.c>
        DeflateCompressionLevel 1
        <IfModule mod_filter.c>
            FilterDeclare COMPRESS
            FilterProvider COMPRESS DEFLATE "%{CONTENT_TYPE} =~ m#^text/#i"
            FilterProvider COMPRESS DEFLATE "%{CONTENT_TYPE} =~ m#^application/(atom\+xml|javascript|json|rss\+xml|xml|xhtml\+xml)#i"
            FilterProvider COMPRESS DEFLATE "%{CONTENT_TYPE} =~ m#^image/(svg\+xml|vnd\.microsoft\.icon)#i"
            FilterChain COMPRESS
            FilterProtocol COMPRESS DEFLATE change=yes;byteranges=no
        </IfModule>
    </IfModule>

もしmod_filter が有効にできないとかの場合は仕方がないので
こんな感じかな

<IfModule mod_deflate.c>
    SetOutputFilter DEFLATE
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSIE !no-gzip !gzip-only-text/html
    SetEnvIfNoCase Request_URI \
      \.(?:gif|jpe?g|png|pdf|ico)$ no-gzip dont-vary
    Header append Vary Accept-Encoding env=!dont-vary
</IfModule>

コメント

タイトルとURLをコピーしました