HP高速化、apacheでmod_deflate(mod_gzip)する方法

ホームページの表示速度を早くするために、サーバーからホームページを見に来た人に画像やテキストデータを圧縮して送る方法です。
VPSやAWSといった自分でサーバーを立てる方は設定が必要です。
圧縮して送ることで、容量が軽くなり、ユーザーに早くホームページを表示することができるようになります。

Apache2.xの場合

mod_deflateモジュールを使って圧縮を行います。

まずは、テキスト文章(.html,.css,.jsなどなど)を圧縮する方法

AddOutputFilterByType  DEFLATE text/html text/plain text/xml

をapacheの設定ファイル(httpd.conf)の中に記入するだけで完了です。

画像以外を全て圧縮する方法

画像はもともと圧縮してあるため、圧縮を行うとサーバー側に逆に負担をかけてしまうので行うのをお勧めしません。
Apache2.0.x

<IfModule mod_deflate.c>
  SetOutputFilter  DEFLATE
  
  #Netscape 4.x
  BrowserMatch  ^Mozilla/4 gzip-only-text/html
  
  #Netscape 4.06
  BrowserMatch ^Mozilla/4.0[678] no-gzip
  
  #MSIE masquerades as Netscape,but it isfine
  #BrowserMatch bMSIE !no-gzip !gzip-only-text/html
  
  #NOTE:Due to abug in mod_setenvif up to Apache2.0.48
  #the above regex won't work.You can use the following
  #workaround to get the desired effect:
  BrowserMatch bMSI[E] !no-gizp !gzip-only-text/html
  
  #Don't compress images
  SetEnvIfNoCase  Request_URI.(?:gif|jpe?g|png)$ no-gzip dont-vary
  
  #Make sure proxies don't deliver the wrong content
  Header append Vary User-Agent env=!dont-vary
  </IfModule>

Apache2.2.x用

<IfModule mod_deflate.c>
  SetOutputFilter  DEFLATE
  
  #Netscape 4.x
  BrowserMatch  ^Mozilla/4 gzip-only-text/html
  
  #Netscape 4.06
  BrowserMatch ^Mozilla/4.0[678] no-gzip
  
  #MSIE masquerades as Netscape,but it isfine
  #BrowserMatch bMSIE !no-gzip !gzip-only-text/html
   
  #Don't compress images
  SetEnvIfNoCase  Request_URI.(?:gif|jpe?g|png)$ no-gzip dont-vary
  
  #Make sure proxies don't deliver the wrong content
  Header append Vary User-Agent env=!dont-vary
  </IfModule>

圧縮に対応させない場合

古い機種の携帯などでそのホームページを見る人がいる場合は注意が必要です。
そんなときは、.htaccessを使ってそのフォルダの中のホームページを圧縮させないようにすれば、大丈夫。

<IfModule>
SetEnv no-gzip  
</IfModule> 

1 個のコメント

  • […] 「HP高速化、apacheでmod_deflate(mod_gzip)する方法」に、「ホームページの表示速度を早くするために、サーバーからホームページを見に来た人にデータを圧縮して送る方法です。圧縮して送ることで、容量が軽くなり、早くホームページを表示することができるようになります。」と記述されていましたので、さっそくやってみました。 参考サイト~「Apache モジュール mod_deflate」 [当サイトは、自宅サーバーでxampp for windows(xampp1.6.3a)を使用して立ち上げています。] […]

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です