2007年9月11日火曜日

mod_deflateでYSlowがさらに改善

前記事: mod_expireだけでYSlowが大幅に改善

 引き続きYSlowの指示に従ってApacheの改善。調子に乗ってYSlow対策でmod_deflateを利用してHTTPレスポンスをgzip圧縮を参考に、mod_deflateも使ってみる。
(2007/09/15 追記)
 リンク先の記事では「SetOutputFilter DEFLATE +SetEnvIfNoCase」と「AddOutputFilterByType DEFLATE」を両方使ってるけど、どちらかだけでOK。拡張子で判断したいなら前者、Mime-typeで判断するなら後者でいいと思う。古いNetscape対策はどちらとも組み合わせられるけど、もうそんなに重要じゃないんじゃないかな。Netscape対策しないならIE用の設定も不要、プロキシ用のHeader append Varyも不要になる。
(追記終わり)
(2007/09/27 追記)
SetEnvIfNoCase Request_URIの後ろには半角スペースが必要。
(追記終わり)

 本当はmod_filterを使ってみたかったんだけど、Windows版のApacheに入ってないようなので断念。素直にmod_deflateを使う。
 httpd.confを書き換えて自信が無いから httpd -t するとエラー発生。"Header"のとこが駄目だって。試しにmod_headersのコメントアウトを外すと通った。なるほど。これも使うのね。
 で、結果だけど総合C(73)、「4. Gzip components」がFだったのが、総合C(79)、「4. Gzip components」はAに改善。体感速度としては結構早くなった気がする。
 もう一つ、prototype.jsとか使ってる重いページで試してみる 。こっちは総合D(64)、「4. Gzip components」がFだったのが、総合C(71)、「4. Gzip components」はAに改善。体感速度も早くなった気もする。mod_expireとmod_deflateの合わせ技なら十分に導入する価値がありそう。この重いページはボトルネックがGoogle Mapsだというのはどうしようもない。Google MapsってFirefoxよりIE6の方に最適化されてるよね。

 しばらく試してみて問題ないようなら採用しよう。

0 件のコメント:

ブログ アーカイブ

tags