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

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

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

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

始める前に

無効化は、gcloud コマンドライン インターフェースまたは Google Cloud Console で行うことができます。

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

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

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

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

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

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 の接続拠点を確認するには、キャッシュのロケーションをご覧ください。