キャッシュされたファイルを Amazon CloudFront から削除したいです。
簡単な説明
CloudFront は、オリジンからの cache-control ヘッダーに基づいて、応答をエッジロケーションにキャッシュします。なお、CloudFront は、ディストリビューションのキャッシュ動作における最小、最大、およびデフォルトの有効期間 (TTL) 値に基づいて応答をキャッシュします。
設定した値に基づいて、CloudFront はキャッシュの有効期限が切れるまでキャッシュされたファイルを提供します。更新されたファイルをすぐに提供するには、ファイルを無効にして CloudFront のキャッシュからオブジェクトを削除します。
注: Cookie やクエリ文字列、ヘッダーを使用して応答を変更するオブジェクトの特定のバージョンを無効にすることはできません。無効化すると、オブジェクトのすべてのバージョンが削除されます。
解決策
**注:**AWS コマンドラインインターフェイス (AWS CLI) コマンドの実行中にエラーが発生した場合は、「AWS CLI エラーのトラブルシューティング」を参照してください。また、AWS CLI の最新バージョンを使用していることを確認してください。
AWS マネジメントコンソールを使用してファイルを無効にする
AWS マネジメントコンソールを使用してファイルを無効にする方法については、「ファイルを無効にしてコンテンツを削除する」を参照してください。
重要: ファイルを無効にする場合、料金が発生する可能性があります。詳細については、「ファイル無効化の料金」を参照してください。
AWS CLI コマンドでファイルを無効にする
ファイルを無効にするには、次の AWS CLI コマンド create-invalidation を実行します。
aws cloudfront create-invalidation --distribution-id example-distribution-ID --paths "/example-path/index.html"
注: example-distribution-ID をファイルを提供するディストリビューション ID に、/example-path/index.html を実際のファイルパスに置き換えてください。このコマンドは、AWS CLI コマンド get-invalidation に対し、識別子 ID を返します。
無効化の現在のステータスを特定するには、次の AWS CLI コマンド get-invalidation を実行します。
aws cloudfront get-invalidation --id identifier-id --distribution-id example-distribution-ID
注: example-distribution-ID をファイルを提供するディストリビューション ID に、identifier-id を無効化処理の識別子 ID に置き換えてください。
無効化が完了するまで、そのステータスをポーリングするには、次の AWS CLI コマンドを invalidation-completed 実行します。
aws cloudfront wait invalidation-completed --id identifier-id --distribution-id example-distribution-ID
注: example-distribution-ID をファイルを提供するディストリビューション ID に、identifier-id を無効化処理の識別子 ID に置き換えてください。
関連情報
CloudFront で Amazon S3 の古いコンテンツが提供されるのはなぜですか?