トップ  > サーバ設定:運用  > 各アプリケーションのインストール  > Webサーバ間通信内容圧縮(mod_deflate)

Webサーバ間通信内容圧縮(mod_deflate)  (最終更新日:2009/12/07)

Apacheのmod_deflateを利用して、Webサーバからファイルを圧縮してから送信するようにします。

導入するメリット・デメリット

メリット

  1. コンテンツの転送量が減少するためネットワークへの負荷が低減できます。
  2. ナローバンド環境の場合、レスポンスの向上が期待できる。

デメリット

  1. 設定次第では全コンテンツを圧縮処理する為、CPU消費率が高くなる。
  2. 圧縮したコンテンツをキャッシュしない為、リクエストが発生するたびに圧縮動作をする。
  3. Webブラウザによっては圧縮したコンテンツを処理できず、文字化けする場合がある。

デメリットは設定次第で改善出来るため、サーバが遊んでいる場合は検討みる価値はあると思います。

Webサーバ設定

1.Webサーバ設定
[root@sv ~]# vi /etc/httpd/conf.d/deflate.conf ← DEFLATE設定ファイル作成
ここから----------
<Location />

# DEFLATEの有効化(圧縮するファイルを限定)
AddOutputFilterByType DEFLATE text/html text/plain text/xml

# 送信先ブラウザがNetscape 4.xの場合はtext/htmlのみ圧縮
BrowserMatch ^Mozilla/4 gzip-only-text/html

# 送信先ブラウザがNetscape 4.06-4.08の場合は圧縮しない
BrowserMatch ^Mozilla/4\.0[678] no-gzip

# 送信先ブラウザがMSIEの場合は全て圧縮する
BrowserMatch \bMSI[E] !no-gzip !gzip-only-text/html

# プロキシサーバーが圧縮未対応ブラウザへ圧縮ファイルを送信しないようにする
Header append Vary User-Agent env=!dont-vary

</Location>
----------ここまで
2.設定反映
[root@sv ~]# /etc/rc.d/init.d/httpd reload ← Webサーバー設定反映
httpd を再読み込み中:                                      [  OK  ]

「Check HTTP Compression - Real Time Compression Check」の、「Test a web servers compression performance in real time」にホスト名(http://www.rx-93dff.net)を入力し、「Check Compression」を選択。

「Summary」内の「Compression status」が「Compressed (gzip)」になっていればOK、「Uncompressed」ではNG。