キャッシュを制御する方法

HTTPレスポンスヘッダに情報を設定する

以下の記述は .htaccess でHTTPレスポンスヘッダに情報を設定する Header の基本的な記述と、今回使用する属性についてです。

  1. 基本構造
    • Header 属性 ヘッダ名 値
  2. 属性
    set
    設定、同じ名前のヘッダが存在する場合、置き換え。
    append
    同じ名前のヘッダに値を追加。
    add
    append と同様。
    unset
    指定されたレスポンスヘッダが存在する場合、削除。値は付けない。
    echo
    指定された名前のリクエストヘッダをレスポンスヘッダで返す。値は付けない。

参考サイトW3G キャッシュ制御 Others .htaccess

キャッシュを無効化する

前に、<meta> タグでキャッシュを無効化する方法も書きましたが、.htaccess ではパターンマッチが使用できるので、拡張子やファイルを指定して無効にすることが可能です。

ヘッダ名と値については <meta> タグの時と同様です。

  • <Files ~ "\.(css|js|html)$">
  • Header set Pragma no-cache
  • Header set Cache-Control no-cache
  • </Files>

上記の記述は、拡張子が css js html の場合のみキャッシュを無効化する場合の記述です。

キャッシュに有効期限を付ける

キャッシュの無効化と同様に、<meta> タグでキャッシュに有効期限を付ける方法もありましたが、.htaccess で行う方が細かく設定できます。

  • <Files ~ "\.(jpg|png|gif|ico)$">
  • Header set Cache-Control "max-age=86400"
  • </Files>

この記述は拡張子 jpg png gif ico の場合は、キャッシュの有効期限を一日とするものです。ヘッダ名と値は <meta> タグの時と同様なので、ヘッダ名は expires でも可能です。値もGMT(グリニッジ標準時)でも指定できるはずです。

サイト内関連ページ : PageSpeed を参考に Web ページの表示速度向上のためにやってみたことのまとめ

スポンサードリンク

inserted by FC2 system