使い方
「解析」タブに、応答の Cache-Control の行を貼ります。Expires・Date・Age・Last-Modified・ETag も一緒に貼ると、寿命と残り時間まで計算します。
ブラウザと CDN(共有キャッシュ)のそれぞれについて、扱い・寿命・残り時間を確かめます。
「矛盾・よくある誤り」の一覧で、no-store と max-age の同時指定などを直します。
「設定を作る」タブで用途のプリセットを選び、必要な指定を変えると、Cache-Control の値と nginx・Apache・Next.js の設定例ができます。
できること
寿命と残り時間の計算
RFC 9111 §4.2.1 の順に、ブラウザ(非共有キャッシュ)と CDN(共有キャッシュ)の寿命を決めます。共有キャッシュは s-maxage を最初に使い、Age を引いた残り時間を示します。
ディレクティブごとの意味
public・private・no-cache・no-store・must-revalidate・proxy-revalidate・immutable・stale-while-revalidate・stale-if-error などを、ブラウザと CDN で分けて説明します。
矛盾とよくある誤りの指摘
no-store と max-age の併用、public と private の併用、private に s-maxage、Pragma: no-cache を応答に書いた場合、immutable に寿命がない場合などを、理由の RFC と一緒に示します。
用途別の設定例
ハッシュ付きの静的ファイル・HTML・ログイン後の API のプリセットから、Cache-Control の値と nginx・Apache・Next.js の書き方を作ります。
こんなときに
- Cache-Control の書き方を、ハッシュ付きの静的ファイル・HTML・ログイン後の API の用途ごとに決めたい
- no-cache と no-store のどちらを使うべきか、違いを確かめたい
- 画像や JS を 1 年キャッシュしたが更新されない、と感じたときに、寿命と残り時間を計算したい
- CDN が古い応答を返す理由を、s-maxage と max-age の扱いから確かめたい
- Cookie 付きの応答が共有キャッシュに入らないか、設定を見直したい
対応形式
入力
対応状況
| 機能 | 対応 | 補足 |
|---|---|---|
| Cache-Control の解析とディレクティブごとの意味 | 対応 | — |
| ブラウザと CDN(共有キャッシュ)の寿命・残り時間の計算 | 対応 | — |
| 矛盾・よくある誤りの指摘 | 対応 | — |
| nginx・Apache・Next.js の設定例 | 対応 | — |
| URL を入れて実際の応答ヘッダーを取得する | 非対応 | ネットワークには接続しません。応答ヘッダーを貼り付けてください |
| CDN ごとの独自の挙動の再現 | 非対応 | RFC の規定に基づく判定です。CDN の独自のルールは含みません |
| ヒューリスティックな鮮度の正確な値 | 一部対応 | RFC は値を定めていません。目安の 10% を示します |
制限・注意事項
- 寿命の計算は、貼り付けた Date・Age・Expires だけで行います。受信してからの経過時間は含めません。
- Last-Modified から求める鮮度(ヒューリスティック)は、RFC 9111 §4.2.2 が値を定めていないため、一般的な目安(10%)で示します。
- 判定は RFC 9111・RFC 8246・RFC 5861 の定義に基づきます。CDN・プロキシ・ブラウザは、独自の規則を加えることがあります。
- 入力の上限は、2 万字と 200 行までです。
- 設定例のパスは例です。配信の構成(CDN・プロキシ・フレームワーク)によって、設定する場所が変わります。
- スマートフォンでも使えますが、長い応答ヘッダーの貼り付けは PC 推奨です。
プライバシーと安全性
貼り付けた応答ヘッダーと設定は、お使いのブラウザの中だけで処理されます。サーバーへ送信・保存されることはありません。
よくある質問
no-cache と no-store の違いは何ですか?
immutable とは何ですか?
max-age と s-maxage はどう違いますか?
Cache-Control の書き方の基本は何ですか?
stale-while-revalidate と stale-if-error は何をしますか?
関連ツール
CSP Studio
CSP のヘッダーや meta タグを貼り付けると、unsafe-inline・unsafe-eval・ワイルドカード・object-src や base-uri の欠落などを重さ(高・中・低)つきで指摘し、改善案を示します。生成と hash 計算もできます。
nginx Config Studio
リバースプロキシ・SPA・PHP-FPM・HTTP から HTTPS への転送などの設定をフォームから作り、手元の nginx.conf を貼ると構文エラーや見落としやすい点を一覧にします。ブラウザの中だけで動き、nginx は実行しません。
Cookie / Set-Cookie Studio
Cookie ヘッダーや Set-Cookie を貼り付けると、属性(Expires・Max-Age・Domain・Path・Secure・HttpOnly・SameSite・Partitioned)を表にし、確認したい点を示します。フォームから Set-Cookie ヘッダーと各言語の書き方も作れます。
CORS Studio
ブラウザが CORS エラーで通さないとき、要求(Origin・メソッド・ヘッダー・認証情報)と応答ヘッダーを入れると、通るか通らないかと理由を、ヘッダーごとに示します。許可する設定の書き方も作れます。
HTML 構造・見出し・画像・リンク診断
ページの HTML を貼り付けるだけで、SEO とアクセシビリティの基本項目(見出し構成・メタタグ・OGP・画像の alt・リンク・構造化データ)を一覧で確認できます。検索結果と SNS でのおおよその見え方もプレビューします。
robots.txt テスター
robots.txt を貼り付けると、指定した URL が Googlebot や AI クローラーに「許可」か「ブロック」かと、どの行のルールが効いたかがすぐ分かります。つづりの誤りや Google が無視する命令も指摘します。
最終更新: