• 052月

    ブログにいっぱいPHPで出力するブログパーツもどきを付けているので、
    これをちょっとでも高速化しておこうと、gzip圧縮をかける処理を調べてみました。
    以前からキャッシュはしてあるんですが、サイズも小さい方が良いですからね。

    調べてみると、こんな感じのおまじないで対応できるようです。

    if (substr_count($_SERVER[‘HTTP_ACCEPT_ENCODING’], ‘gzip’)) {
        ob_start(“ob_gzhandler”);
    }
    else {
        ob_start();
    }

    そんなに劇的なものではないですけど、そこはまぁ気持ちの問題ですね。
    なお、実際にgzipが効いてるかどうかはGoogle謹製のFireFoxプラグイン
    「PageSpeed」で確認できます。

    あと、そのついでにPHP経由で出力されるJavaScriptのキャッシュ有効期間も
    設定しておきました。
    こちらはHeaderを付けて対応しました。とりあえず10日間くらいで良いかなぁ。

    header(‘Cache-control: must-revalidate’);
    header(‘Expires: ‘.gmdate(‘D, d M Y H:i:s’, time() + 10*24*3600).’ GMT’);

    もっと細かくファイル種別ごとにいろいろ設定したいんですが、レンタルサーバでは
    httpd.confがいじれないですからねぇ。
    まぁ、一応、メモ代わりのエントリーでありました。

    487311361X ハイパフォーマンスWebサイト ―高速サイトを実現する14のルール
    武舎 広幸
    オライリージャパン 2008-04-11

    by G-Tools

    (当サイトでは、Amazonアソシエイトをはじめとした第三者配信のアフィリエイトプログラムにより商品をご紹介致しております。)

    Filed under: Blog
    2010/02/05 5:08 pm | 2 Comments

2 Responses

WP_Lime_Slice
  • padmacolors Says:

    僕も仕事サイトでは多用しています。
    PHPが出力するHTMLはもちろんなんですが、CSSとかJavaScriptとかJSONなんかも圧縮しまくってますw

  • MacBS Says:

    padmacolorsさん、コメントありがとうございます。

    gzip圧縮、ブログ側はプラグインでやってます。
    JavaScriptも結構サイズが大きくなりがちなので圧縮の効果はありそうですね。

    ところで、PageSpeed、ベータ版は最新のFireFoxに対応してました。
    YSlowと併用すれば、かなり参考になりますね。