メインコンテンツまでスキップ

RFC 9111 - HTTP Caching (HTTPキャッシング)

発行日: 2022年6月
ステータス: インターネット標準 (STD 98)
著者: R. Fielding (Ed., Adobe), M. Nottingham (Ed., Fastly), J. Reschke (Ed., greenbytes)
廃止: RFC 7234


概要 (Abstract)

ハイパーテキスト転送プロトコル (Hypertext Transfer Protocol, HTTP) は、分散型の協調的なハイパーテキスト情報システムのためのステートレスなアプリケーション層プロトコルです。本文書は、HTTPキャッシュと、キャッシュの動作を制御するか、キャッシュ可能な応答メッセージを示す関連するヘッダーフィールドを定義します。

本文書はRFC 7234を廃止します。


目次 (Table of Contents)

  • 1. Introduction (はじめに)

    • 1.1 Requirements Notation (要求表記法)
    • 1.2 Syntax Notation (構文表記法)
      • 1.2.1 Imported Rules (インポートされたルール)
      • 1.2.2 Delta Seconds (デルタ秒)
  • 2. Overview of Cache Operation (キャッシュ操作の概要)

  • 3. Storing Responses in Caches (キャッシュへの応答の保存)

    • 3.1 Storing Header and Trailer Fields (ヘッダーフィールドとトレーラーフィールドの保存)
    • 3.2 Updating Stored Header Fields (保存されたヘッダーフィールドの更新)
    • 3.3 Storing Incomplete Responses (不完全な応答の保存)
    • 3.4 Combining Partial Content (部分コンテンツの結合)
    • 3.5 Storing Responses to Authenticated Requests (認証されたリクエストへの応答の保存)
  • 4. Constructing Responses from Caches (キャッシュからの応答の構築)

    • 4.1 Calculating Cache Keys with the Vary Header Field (Varyヘッダーフィールドを使用したキャッシュキーの計算)
    • 4.2 Freshness (新鮮度)
      • 4.2.1 Calculating Freshness Lifetime (新鮮度ライフタイムの計算)
      • 4.2.2 Calculating Heuristic Freshness (ヒューリスティック新鮮度の計算)
      • 4.2.3 Calculating Age (年齢の計算)
      • 4.2.4 Serving Stale Responses (古い応答の提供)
    • 4.3 Validation (検証)
      • 4.3.1 Sending a Validation Request (検証リクエストの送信)
      • 4.3.2 Handling a Received Validation Request (受信した検証リクエストの処理)
      • 4.3.3 Handling a Validation Response (検証応答の処理)
      • 4.3.4 Freshening Stored Responses upon Validation (検証時の保存された応答の更新)
      • 4.3.5 Freshening Responses with HEAD (HEADを使用した応答の更新)
    • 4.4 Invalidating Stored Responses (保存された応答の無効化)
  • 5. Field Definitions (フィールド定義)

    • 5.1 Age
    • 5.2 Cache-Control
      • 5.2.1 Request Directives (リクエストディレクティブ)
      • 5.2.2 Response Directives (レスポンスディレクティブ)
      • 5.2.3 Extension Directives (拡張ディレクティブ)
      • 5.2.4 Cache Directive Registry (キャッシュディレクティブレジストリ)
    • 5.3 Expires
    • 5.4 Pragma
    • 5.5 Warning
  • 6. Relationship to Applications and Other Caches (アプリケーションおよび他のキャッシュとの関係)

  • 7. Security Considerations (セキュリティに関する考慮事項)

    • 7.1 Cache Poisoning (キャッシュポイズニング)
    • 7.2 Timing Attacks (タイミング攻撃)
    • 7.3 Caching of Sensitive Information (機密情報のキャッシング)
  • 8. IANA Considerations (IANAに関する考慮事項)

    • 8.1 Field Name Registration (フィールド名の登録)
    • 8.2 Cache Directive Registration (キャッシュディレクティブの登録)
    • 8.3 Warn Code Registry (警告コードレジストリ)
  • 9. References (参考文献)

    • 9.1 Normative References (規範的参考文献)
    • 9.2 Informative References (参考情報)

付録 (Appendices)


関連リソース


コアコンセプト: HTTPキャッシュは、以前の応答を保存および再利用することでパフォーマンスを大幅に向上させ、レイテンシとネットワークオーバーヘッドを削減し、ユーザー体験を改善してサーバーの負荷を軽減します。