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

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

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

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

準備

gcloudコマンドライン インターフェースまたは Google Cloud Console を使用して無効化できます。

gcloud コマンドライン ツールには、次の 2 つの方法でアクセスできます。

  • apt-get を使用してインストールするの手順に従って Cloud SDK をインストールします。gcloud コマンドライン ツールを使用したことがない場合は、最初に gcloud init を実行して認証します。

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

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

Console

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

    Cloud CDN ページに移動

  2. 該当する送信元の名前をクリックします。
  3. [キャッシュの無効化] タブをクリックします。
  4. ファイルのパスを入力します。
    • すべてのホスト名を対象にパスを無効にするには、パスだけを入力します(例: /images/foo.jpg)。
    • 1 つのホスト名のみを対象にパスを無効にするには、パスの一部としてホスト名を指定します(例: example.com/images/foo.jpg)。
  5. [無効にする] をクリックします。

gcloud

gcloud compute url-maps invalidate-cdn-cache URL_MAP_NAME \
    --path "/images/foo.jpg"

URL_MAP_NAME は、ロードバランサの URL マップリソースの名前に置き換えます。

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

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

デフォルトでは、gcloud コマンドライン ツールは無効化が完了するまで待機します。バックグラウンドで無効化を行うには、コマンドラインに --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 URL_MAP_NAME \
    --path "/images/*"

URL_MAP_NAME は、ロードバランサの URL マップリソースの名前に置き換えます。

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

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

デフォルトでは、gcloud コマンドライン ツールは無効化が完了するまで待機します。バックグラウンドで無効化を行うには、コマンドラインに --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 URL_MAP_NAME \
    --host HOSTNAME \
    --path "/*"

以下を置き換えます。

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

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

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

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

次のステップ

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