キャッシュに保存されたコンテンツの無効化

このページでは、Cloud CDN のキャッシュ コンテンツを無効にする方法について説明します。

たとえば、/images/file.jpg にあるファイルがキャッシュに保存され、これを無効にする必要がある場合、そのファイルだけを対象とするか、それとも対象範囲を広げるかによって、無効にする方法が異なります。いずれの場合も、すべてのホスト名で無効にすることも、1 つのホスト名だけで無効にすることもできます。

キャッシュの無効化の詳細については、キャッシュ無効化の概要をご覧ください。

始める前に

無効化は、Google Cloud CLI または Google Cloud Console で行うことができます。

Google Cloud CLI には、次の 2 つの方法でアクセスできます。

  • Google Cloud CLI をインストールするには、apt-get を使用したインストールの手順をご覧ください。これまで Google Cloud CLI を使用したことがない場合は、最初に gcloud init を実行して認証します。

  • Cloud Shell を使用します。これは gcloud に付属しており、すでにインストールされています。

必要な権限を持つカスタムロールを作成するには、カスタムロールの作成と管理をご覧ください。

事前定義ロールを追加するには、IAM クイックスタートを使用します。

1 つのファイルのみを無効にする

Console

  1. Google Cloud Console で、[Cloud CDN] ページに移動します。

    [Cloud CDN] ページに移動

  2. [関連付けられているロードバランサ] で、ロードバランサの名前をクリックします。
  3. [キャッシュの無効化] タブをクリックします。
  4. ファイルのパスを入力します。
    • すべてのホスト名を対象にパスを無効にするには、パスだけを入力します(例: /images/file.jpg)。
    • 1 つのホスト名のみを対象にパスを無効にするには、パスの一部としてホスト名を指定します(例: example.com/images/file.jpg)。
  5. [無効にする] をクリックします。

gcloud

gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
    --path "/images/file.jpg"

外部 HTTP(S) ロードバランサの名前と URL マップの名前は同じです。

LOAD_BALANCER_NAME はロードバランサの名前に置き換えます。ロードバランサを一覧表示するには、gcloud compute url-maps list コマンドを使用します。

省略可: 1 つのホストだけを対象に無効にするには、--host フラグを追加します(--host example.com)。

gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
    --host HOSTNAME \
    --path "/images/file.jpg"

デフォルトでは、Google Cloud CLI は無効化が完了するまで待機します。バックグラウンドで無効化を行うには、コマンドラインに --async を追加します。

ディレクトリ全体を無効にする

Console

  1. Google Cloud Console で、[Cloud CDN] ページに移動します。

    [Cloud CDN] ページに移動

  2. [関連付けられているロードバランサ] で、ロードバランサの名前をクリックします。
  3. [キャッシュの無効化] タブをクリックします。
  4. ディレクトリ パスとワイルドカード(/path/to/file/*)を入力します。
    • すべてのホスト名を対象にディレクトリ全体を無効にするには、パスとワイルドカード(例: /images/*)だけを入力します。
    • 1 つのホスト名のみを対象にディレクトリ全体を無効にするには、パスの一部としてホスト名を指定します(例: example.com/images/*)。
  5. [無効にする] をクリックします。

gcloud

gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
    --path "/images/*"

LOAD_BALANCER_NAME はロードバランサの名前に置き換えます。ロードバランサを一覧表示するには、gcloud compute url-maps list コマンドを使用します。

省略可: 1 つのホストだけを対象に無効にするには、--host フラグを追加します(--host example.com)。

gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
    --host HOSTNAME \
    --path "/images/*"

デフォルトでは、Google Cloud CLI は無効化が完了するまで待機します。バックグラウンドで無効化を行うには、コマンドラインに --async を追加します。

すべて無効にする

Console

  1. Google Cloud Console で、[Cloud CDN] ページに移動します。

    [Cloud CDN] ページに移動

  2. [関連付けられているロードバランサ] で、ロードバランサの名前をクリックします。
  3. [キャッシュの無効化] タブをクリックします。
  4. ルートとワイルドカード(/*)を入力します。
    • すべてのホスト名を対象にすべてを無効にするには、フィールドに /* だけを入力します。
    • 1 つのホスト名のみを対象にすべてを無効にするには、ホスト名をパスの一部として指定します(例: example.com/*)。
  5. [無効にする] をクリックします。

gcloud

gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
    --path "/*"

次のように置き換えます。

  • LOAD_BALANCER_NAME: ロードバランサの名前
  • /*: 無効にする URL パス。ホスト名は含まれません。パスにはファイル名またはワイルドカードを使用できます。

省略可: 1 つのホストだけを対象に無効にするには、--host フラグを追加します(--host example.com)。

gcloud compute url-maps invalidate-cdn-cache LOAD_BALANCER_NAME \
    --host HOSTNAME \
    --path "/*"

デフォルトでは、Google Cloud CLI は無効化が完了するまで待機します。バックグラウンドで無効化を行うには、コマンドラインに --async を追加します。

次のステップ

  • Cloud CDN がキャッシュからレスポンスを配信しているかどうかを確認するには、ログの表示をご覧ください。
  • キャッシュに保存可能なコンテンツと保存できないコンテンツについては、キャッシュの概要をご覧ください。