コンテンツにスキップ

キャッシュタグによるキャッシュの消去

キャッシュタグの消去は、ウェブページ、画像ファイルなどのアセットにキャッシュタグを追加することで、複数ファイルの消去を容易にします。タグ、ホスト名、プレフィックスの消去は、エンタープライズ顧客のみが利用可能です。

キャッシュタグの一般的なワークフロー

  1. ウェブコンテンツ(ページ、静的アセットなど)のために、オリジンウェブサーバーからCache-Tag HTTPレスポンスヘッダーにタグを追加します。
  2. ウェブトラフィックがプロキシされていることを確認するためにCloudflareを通します。
  3. Cloudflareは、Cache-Tag HTTPヘッダー内のタグをキャッシュされるコンテンツに関連付けます。
  4. 特定のキャッシュタグを使用して、ダッシュボードまたはAPIを使用してCloudflare CDNキャッシュからそのキャッシュタグを含むすべてのコンテンツを消去します。
  5. Cloudflareは、消去されたキャッシュタグを持つコンテンツに対してキャッシュMISSを強制します。

Cache-Tag HTTPレスポンスヘッダーの追加

ウェブコンテンツにキャッシュタグをCache-Tag HTTPレスポンスヘッダーに追加することで、クライアントとサーバーがリクエストやレスポンスに追加情報を渡すことができます。HTTPヘッダーは、特定の大文字小文字を区別しない名前の後にコロン:と有効な値が続く形式で構成されます。例えば、Cache-Tag:tag1,tag2,tag3のようになります。複数のキャッシュタグを使用する場合は、カンマでタグを区切ります。

コンテンツが当社のエッジネットワークに到達すると、Cloudflareは以下の処理を行います:

  • レスポンスをウェブサイト訪問者に送信する前にCache-Tag HTTPヘッダーを削除します。エンドユーザーは、Cloudflareが有効なウェブサイト上でCache-Tag HTTPヘッダーを見ることはありません。
  • ヘッダーから空白を削除し、キャッシュタグ名の前後の空白も削除します:tag1tag2、およびtag1,tag2は同じと見なされます。
  • キャッシュタグを適用する前に、すべての重複したカンマと末尾のカンマを削除します:tag1,,,tag2tag1,tag2は同じと見なされます。

覚えておくべきこと

  • 単一のHTTPレスポンスには、複数のCache-Tag HTTPヘッダーフィールドを持つことができます。
  • キャッシュタグの最小長は1バイトです。
  • 個々のタグには最大長はありませんが、集約されたCache-Tag HTTPヘッダーは、ヘッダーフィールド名の後で16 KBを超えてはならず、これは約1,000のユニークタグに相当します。長さには空白とカンマが含まれますが、ヘッダーフィールド名は含まれません。
  • キャッシュ消去のために、API呼び出しでのキャッシュタグの最大長は1,024文字です。
  • Cache-Tag HTTPヘッダーにはUTF-8エンコードされた文字のみを含める必要があります。
  • キャッシュタグには空白を含めることはできません。
  • 大文字小文字は区別されません。例えば、Tag1tag1は同じと見なされます。

キャッシュタグを使用した消去

  1. Cloudflareダッシュボードにログインし、アカウントとドメインを選択します。
  2. キャッシング > 設定を選択します。
  3. キャッシュの消去の下で、カスタム消去を選択します。カスタム消去ウィンドウが表示されます。
  4. 消去方法の下で、タグを選択します。
  5. テキストボックスに、キャッシュされたリソースを消去するために使用するタグを入力します。複数のキャッシュタグ付きリソースを消去するには、各タグをカンマで区切るか、1行に1つのタグを入力します。
  6. 消去を選択します。

結果としてのキャッシュステータス

タグによる消去はリソースを削除し、その結果、次のリクエストに対してCF-Cache-StatusヘッダーがMISSに設定されます。

tiered cacheが使用されている場合、タグによる消去はEXPIREDを返すことがあります。これは、下位層が上位層と再検証を試みて、後者の負荷を軽減するためです。上位層がリソースを持っているかどうか、エンドユーザーが下位層または上位層に到達しているかどうかに応じて、EXPIREDまたはMISSが返されます。