---
title: "stale cacheとは？HTML共有・AI生成サイトでの意味をやさしく解説"
description: "stale cache（古いキャッシュ）がHTML共有やAI生成サイトのプレビュー更新で引き起こす問題を解説。原因・確認方法・クリア手順を実践的にまとめています。"
image: "https://giga-site.com/og-image.png"
canonical: "https://giga-site.com/articles/what-is-stale-cache-html-share"
markdown: "https://giga-site.com/articles/what-is-stale-cache-html-share/index.md"
category: "用語解説"
publishedAt: "2026-06-25"
updatedAt: "2026-06-25"
readingMinutes: 5
---
# stale cacheとは？HTML共有・AI生成サイトでの意味をやさしく解説

「stale cache（古いキャッシュ）」は、有効期限が切れたにもかかわらずブラウザやCDNに残り続けるキャッシュデータのことです。AI生成HTMLをプレビュー共有した後にファイルを差し替えても、stale cacheがあると確認者は古い内容を見続けます。stale cacheが発生する原因と、それを意図的に制御する方法を理解しておくと、共有時の混乱を大幅に減らせます。

> Source HTML: https://giga-site.com/articles/what-is-stale-cache-html-share
> Article index: https://giga-site.com/articles/index.md

## ひとことで言うと

キャッシュには有効期限（max-age）があり、期限が切れたキャッシュを「stale（古い）」と呼びます。stale cacheはそのまま削除されるとは限らず、`stale-while-revalidate`ディレクティブが設定されている場合、バックグラウンドで再確認しながら古いデータを一時的に提供し続ける動作をします。この仕組みはページを高速表示するために有用ですが、プレビュー確認では最新版が見えないという問題を起こします。

ブラウザキャッシュとCDNキャッシュの両方でstale cacheは発生します。ブラウザキャッシュはShift+F5でクリアできますが、CDNキャッシュは共有サービスの管理画面から手動でパージするか、ファイル名を変えて新しいURLを発行するしか対策がありません。どちらの層でstaleが起きているかを切り分けることが、トラブルシュートの第一歩です。

- 相手がログインなしで開ける状態か確認する
- PCとスマホで最低1回ずつ表示を確認する
- 内部情報・個人情報・不要な外部送信が残っていないか見る
- レビュー期限と修正時の差し替え方を決めておく

## HTML共有で関係する場面

AIで生成した提案資料HTMLを「確認お願いします」と共有した後、フィードバックを受けてファイルを修正しアップロードし直した場合、Cloudflareなどのエッジキャッシュに旧バージョンが残っていると、確認者は何度リロードしても古い版を見続けます。この場合は管理画面の「Purge Cache」またはギガサイト便の差し替えアップロードでキャッシュを強制更新する必要があります。

stale-while-revalidateはNext.jsやAstroなどのフレームワークが自動設定することがあります。AI生成HTMLにフレームワークのビルド設定が含まれる場合、stale cacheの設定が混入している可能性があります。共有先で「表示が更新されない」という報告が来たら、開発者ツールのNetworkタブでステータスコードが「304 Not Modified」か「200」かを確認して、どの層でキャッシュされているかを判断してください。

## よくある誤解

「stale cacheは悪いもの」と思われがちですが、適切に管理されたstale cacheはWebサイトのパフォーマンスを大幅に向上させます。`stale-while-revalidate`を使えばユーザーはキャッシュから即座にページを受け取り、同時にバックグラウンドで最新版の確認が走るため、遅延ゼロで鮮度も維持できます。問題が起きるのは「更新したことが意図せずキャッシュに隠される」場面だけです。

「ブラウザのキャッシュをクリアすれば必ず最新版が見える」は部分的に正しいですが、CDNレベルのキャッシュはブラウザ側でクリアしても取得できます。ブラウザとCDNの両方にキャッシュが存在するため、ブラウザクリアだけでは解決しないケースがあります。「自分の端末では最新版が見えるのに相手には古い版が見える」という現象がこのパターンです。

## 安全に使うための注意点

プレビュー共有では常に「最新版が届くこと」が最優先です。HTMLファイル名にバージョン番号（例：`proposal-v2.html`）かハッシュ（例：`proposal-a3b4c5.html`）を含めることで、差し替え時に自動的に別のURLになり、stale cacheの影響を完全に排除できます。この方法だと確認者に新しいURLを送り直す手間が生じますが、「古い版を見ている」というトラブルはゼロにできます。

stale-while-revalidateを長期間に設定した共有ページは、頻繁に更新が発生するプレビュー用途には向きません。プレビュー用のURLと最終公開用のURLを分けて管理し、プレビューにはキャッシュを短く設定するか無効化する運用が理想的です。ギガサイト便のような共有サービスではキャッシュ設定をサービス側が管理するため、差し替え後の確認はシークレットモードで行うのが確実です。

## よくある質問

### stale cacheとexpired cacheの違いは何ですか？

expired cacheは有効期限が過ぎたキャッシュ全般を指し、stale cacheはその中でもまだ削除されずに使われている状態を指します。stale-while-revalidateが設定されている場合、期限切れでも一定期間は配信されます。

### 確認者に「最新版を見てください」と伝える際の最も確実な手順は？

シークレットモード（Chromeならシフト+Ctrl+N）で共有URLを開き直してもらうのが最も手軽です。それでも変わらない場合はCDNキャッシュが残っているため、管理画面からキャッシュパージを行うか、新しいURLで共有し直してください。

### stale-while-revalidateはHTML共有サービスで使うべきですか？

更新頻度が高いプレビュー共有には向きません。最終公開済みの静的コンテンツや、更新が月1回以下の案内ページには有効ですが、レビュー中のHTMLには短いmax-ageかno-storeを設定することをおすすめします。

## 関連記事

- [Cache-Controlとは？HTML共有・AI生成サイトでの意味をやさしく解説](https://giga-site.com/articles/what-is-cache-control-html-share/index.md)
- [エッジキャッシュとは？HTML共有・AI生成サイトでの意味をやさしく解説](https://giga-site.com/articles/what-is-edge-cache-html-share/index.md)
- [SRI（Subresource Integrity）とは？HTML共有・AI生成サイトでの意味をやさしく解説](https://giga-site.com/articles/what-is-sri-html-share/index.md)
- [Referrer-Policyとは？HTML共有・AI生成サイトでの意味をやさしく解説](https://giga-site.com/articles/what-is-referrer-policy-html-share/index.md)
- [Permissions-Policyとは？HTML共有・AI生成サイトでの意味をやさしく解説](https://giga-site.com/articles/what-is-permissions-policy-html-share/index.md)
- [Same-Origin Policyとは？HTML共有・AI生成サイトでの意味をやさしく解説](https://giga-site.com/articles/what-is-same-origin-policy-html-share/index.md)

```json
{
  "@context": "https://schema.org",
  "@type": "Article",
  "headline": "stale cacheとは？HTML共有・AI生成サイトでの意味をやさしく解説",
  "description": "stale cache（古いキャッシュ）がHTML共有やAI生成サイトのプレビュー更新で引き起こす問題を解説。原因・確認方法・クリア手順を実践的にまとめています。",
  "datePublished": "2026-06-25",
  "dateModified": "2026-06-25",
  "mainEntityOfPage": "https://giga-site.com/articles/what-is-stale-cache-html-share",
  "url": "https://giga-site.com/articles/what-is-stale-cache-html-share",
  "inLanguage": "ja",
  "image": "https://giga-site.com/og-image.png",
  "articleSection": "用語解説",
  "author": {
    "@type": "Organization",
    "name": "ギガサイト便"
  },
  "publisher": {
    "@type": "Organization",
    "name": "ギガサイト便"
  },
  "mainEntity": [
    {
      "@type": "Question",
      "name": "stale cacheとexpired cacheの違いは何ですか？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "expired cacheは有効期限が過ぎたキャッシュ全般を指し、stale cacheはその中でもまだ削除されずに使われている状態を指します。stale-while-revalidateが設定されている場合、期限切れでも一定期間は配信されます。"
      }
    },
    {
      "@type": "Question",
      "name": "確認者に「最新版を見てください」と伝える際の最も確実な手順は？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "シークレットモード（Chromeならシフト+Ctrl+N）で共有URLを開き直してもらうのが最も手軽です。それでも変わらない場合はCDNキャッシュが残っているため、管理画面からキャッシュパージを行うか、新しいURLで共有し直してください。"
      }
    },
    {
      "@type": "Question",
      "name": "stale-while-revalidateはHTML共有サービスで使うべきですか？",
      "acceptedAnswer": {
        "@type": "Answer",
        "text": "更新頻度が高いプレビュー共有には向きません。最終公開済みの静的コンテンツや、更新が月1回以下の案内ページには有効ですが、レビュー中のHTMLには短いmax-ageかno-storeを設定することをおすすめします。"
      }
    }
  ]
}
```
