【CentOS】Apacheでgzipを有効にする【Deflate】

| 0件のコメント

Deflateアルゴリズムの中でも有名な方式がgzip(Deflate+Header/Footer)です。
gzip(GNUZIP)は、LZ77とハフマン符号を組み合わせた圧縮方式です。
gzip転送で速くなるかは環境次第でネットワークがボトルネックの場合は効果が大きいですが、gzipの展開時間との兼ね合いにもよります。
gzipは圧縮/展開とも比較的高速なことから様々なケースで使われます。

環境はこちらです。debian系とは設定関連の場所が異なります。


$ httpd -v
Server version: Apache/2.2.15 (Unix)
Server built:   Aug 13 2013 17:29:28

まずhttpd.confを編集します。


$ vim /etc/httpd/conf/httpd.conf 

以下を追加します。


LoadModule deflate_module modules/mod_deflate.so

念のため確認。(viで:/modules/mod_deflate.soとか何でもOK)


$ grep -n "LoadModule deflate_module modules/mod_deflate.so" /etc/httpd/conf/httpd.conf 
172:LoadModule deflate_module modules/mod_deflate.so

conf.dに設定ファイルをおきます。


$ cd /etc/httpd/conf.d/
$ vim gzip.conf

以下の感じです。



    SetOutputFilter DEFLATE
    BrowserMatch ^Mozilla/4 gzip-only-text/html
    BrowserMatch ^Mozilla/4\.0[678] no-gzip
    BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html
    SetEnvIfNoCase Request_URI\.(?:gif|jpe?g|png)$ no-gzip dont-vary
    Header append Vary User-Agent env=!dont-vary

確認して再起動します。


$ ls
README  gzip.conf  php.conf  welcome.conf
$ /etc/rc.d/init.d/httpd restart

chromeやfirebugで確認します。
以下のようにレスポンスがContent-Encoding gzipになっていたら成功です。

gzip

コメントを残す

必須欄は * がついています