Cache-Controlヘッダ
読み
キャッシュコントロールヘッダ
意味
- HTTPレスポンスに付与しブラウザや中間サーバーのキャッシュ有効期限や利用範囲を指定するヘッダ
- リソースをどの程度の期間保持してよいか、共有キャッシュと個別キャッシュどちらを使うかを明示する仕組み
- サーバー負荷を下げつつ最新データへの更新タイミングをコントロールするパフォーマンス調整の要
比喩
冷蔵庫の賞味期限ラベルのようなもの。いつまで保存できるか、誰が使えるかを示す。
語源
Cache Control=キャッシュの制御。HTTPヘッダの一種として標準化された
例文
- Cache-Control: max-age=3600で1時間のキャッシュを許可しサーバーへの問い合わせを削減した
- 静的ファイルにCache-Control: immutableを設定しブラウザが再検証をスキップするよう指示した
- APIレスポンスにCache-Control: privateを付与し個人情報が共有キャッシュに残らないようにした
よくある勘違い
- Cache-Controlを設定すれば確実にキャッシュされると考えること→ブラウザや中間プロキシが独自ポリシーで無視する場合もある
- 全てのリソースにmax-ageを長く設定してしまい更新が反映されないこと→リソースの種類に応じて期限を調整する