Cache-Control: private

private キャッシュ指令 (HTTP)

[11] Cache-Control: ヘッダーprivate キャッシュ指令は、 共有キャッシュ蓄積してはならないことを表します。

仕様書

意味

[3] 応答Cache-Control: ヘッダーprivate キャッシュ指令は、 応答メッセージが単一利用者に向けたものであり、 共有キャッシュ蓄積してはならないことを表します >>1

[14] 一方私的キャッシュは (本来キャッシュ可能ではないとしても) キャッシュ可能となります。

構文

[6] 引数を指定してもしなくても構いません >>1。 指定する場合は引用文字列生成するべきです >>1受信者字句でも引用文字列でも対応するべき (ought to) です >>2

[7] 引数の値はヘッダー名リスト (#) です >>1大文字・小文字不区別です >>1

  1. ?
    1. ヘッダー名
    2. *
      1. OWS
      2. ,
      3. OWS
      4. ヘッダー名

処理モデル

[4] 共有キャッシュヘッダー名が指定されていない場合、 応答蓄積してはなりません >>1

[8] 共有キャッシュヘッダー名が指定されている場合、 応答のうち指定されたヘッダー以外を蓄積して構いません >>1

[9] 引数空文字列の場合にどちらと解釈されるのかは不明です。

[5] 私的キャッシュは通常キャッシュ可能でないとしても、 応答蓄積して再利用して構いません >>1

実装

[10] 実装によってはヘッダー名が指定されていても無視して、 ヘッダー名なしの指定と同じように扱います >>1

[12] 利用者ごとに異なる文書を返す Webアプリケーションでは、 逆串にそのような文書キャッシュさせず、 利用者エージェントにはキャッシュさせるためにこのキャッシュ指令を使うことがよくあります。

メモ

[15] ログインが必要なページがにキャッシュされないように指定しておくと良さそうです。 (no-storeno-cache だとWebブラウザーキャッシュできなくなってしまいます。)

[16] なお、通常なら蓄積されないような状態符号のエラー応答まで蓄積されてしまう可能性があるので、注意が必要です。