Cache Validator Overview
キャッシュ関連ヘッダーを横断して判定します。入力はサーバーへ送信しません。再検証やCDN差分の一次切り分けに使えます。
状態
ブラウザ内で処理します。入力はサーバーへ送信しません。まずはここで一次切り分けしてください。
使い方
ヘッダーを貼り付けて「解析」。ETag/If-None-Match/Last-Modified/If-Modified-Since/If-Range の関係を整理します。
注意(このツール)
- ETag と Last-Modified を併用する場合、生成規則が安定していないと再検証が不安定になります。
- If-Range は部分取得に限定して働きます。通常再検証とは評価条件が異なります。
このページについて
何をするツール?
ETag / Last-Modified と、それに対応する If-None-Match / If-Modified-Since / If-Range をまとめて整理します。
304 の挙動や Range の条件検証を俯瞰して確認できます。
対応関係(ざっくり)
- ETag ⇔ If-None-Match(キャッシュ検証)
- Last-Modified ⇔ If-Modified-Since(日時検証)
- ETag/Last-Modified ⇔ If-Range(Range 条件)
よくあるステータス
- 304 Not Modified: 一致したため本文なし
- 200 OK: 変更あり/条件不一致
- 206 Partial Content: Range 条件が一致
- 412 Precondition Failed: If-Unmodified-Since/If-Match 失敗
切り分け手順(おすすめ)
- Response Headers Parser で ETag/Last-Modified を抽出
- Request Headers で If-* を確認
- このツールで対応関係を整理
推奨(用途別)
- API(JSON): ETag か Last-Modified を必ず付与
- HTML: 弱いETagより Last-Modified が安定
- Range対応: If-Range + ETag/Last-Modified を揃える
関連ツール
- ETag Inspect
- If-None-Match Inspect
- If-Modified-Since Inspect
- If-Range Inspect
- If-Unmodified-Since Inspect
このツールでできること
- キャッシュ検証ヘッダーの関係整理
- ヘッダーの有無と組み合わせの可視化
注意(運用)
- キャッシュ挙動はブラウザ/CDN/プロキシの層で変わるため、同一点観測で比較してください。
- ヘッダー診断だけでは不十分な場合があります。アプリ側の更新戦略とキー設計も確認してください。
参照仕様
- RFC 9110(HTTP Semantics)
- MDN: HTTP caching
FAQ
ETag と Last-Modified は両方必要ですか?
必須ではありませんが、両方あると互換性と再検証精度を高めやすくなります。
If-Range はどの場面で使いますか?
部分取得(Range)時に、リソース未変更を条件に差分再開したい時に使います。
参考リンク
次に見る(診断順)
site_map ルールに基づいて、次に確認すべきページを表示しています。
- If-Match Inspect — If-Match を解析して更新前提条件を確認
- If-Unmodified-Since Inspect — If-Unmodified-Since を解析して更新競合条件を確認
- ETag Builder — 用途に応じたETag値を生成
- If-None-Match Inspect — If-None-Match を解析して再検証条件を確認
- ETag Inspect — ETag と If-None-Match の整合を解析
- If-Modified-Since Inspect — If-Modified-Since を解析して条件付き取得を確認
- Last-Modified Inspect — Last-Modified / If-Modified-Since を解析
同テーマの導線
キャッシュ検証
ETag/Last-Modified と If-* をつないで再検証フローを判断
- ETag Inspect — ETag と If-None-Match の整合を解析
- ETag Builder — 用途に応じたETag値を生成
- If-None-Match Inspect — If-None-Match を解析して再検証条件を確認
- If-Match Inspect — If-Match を解析して更新前提条件を確認
- If-Modified-Since Inspect — If-Modified-Since を解析して条件付き取得を確認
- If-Unmodified-Since Inspect — If-Unmodified-Since を解析して更新競合条件を確認
- Last-Modified Inspect — Last-Modified / If-Modified-Since を解析