Cache-ControlヘッダーとPragmaヘッダー概要 メモ


  • キャッシュ制御用のHTTPヘッダーであるCache-ControlとPragmaについて概要をメモする。

Cache-Control

  • HTTPヘッダーの一つ。
  • キャッシュをブラウザやプロキシ、CDNなどで制御するためのもの。
  • HTTPレスポンスに記述することで、Webアプリからブラウザに送るコンテンツが、途中の経路上でむやみにキャッシュ記録されたり再利用されたりしないように指示する。

設定値

private

  • 特定ユーザーのみが利用できるようにコンテンツをキャッシュさせる。
  • 中間キャッシュには格納させない。ブラウザ〇、CDN×

no-store

  • 返却されたコンテンツに依らず、ブラウザやすべての中間サーバーにそのコンテンツを保存させない。

no-cache

  • 一度キャッシュに保存されたコンテンツはオリジンサーバーへの確認無しにキャッシュを利用させない。

must-revalidate

  • キャッシュに保存されているコンテンツが現在も有効であるか否かをWebサーバに必ず確認させる。

Pragma

  • HTTP/1.1のCache-Controlヘッダーを解さない場合に備えて利用するキャッシュ制御ヘッダー。

    Pragma: no-cache
    

キャッシュを制御する目的

  • 機微な情報を意図せぬ形でキャッシュからレスポンスされてしまうといった事故を防ぐため。

参考情報