コンテンツを公開する際に、AWS CloudFront CDN のキャッシュを無効にするには、どうすればよいですか。

環境

AEM 6.0 ~ 6.3

手順

AEM には、この処理をおこなえるデフォルトの機能はありませんが、次の手順でこの処理用のソリューションを作成できます。

  1. カスタムのレプリケーションエージェントを実装します。手順はこちらを参照してください。
  2. TransportHandler コードで実際のキャッシュを無効にするため、こちらの説明に沿って CloudFront API POST の無効化をおこないます。

または、フラッシュエージェントを作成する代わりに、「Cache-Control: max-age=...」ヘッダーを利用して CloudFront CDN のファイルの TTL を制御する方法も効果的です。これにより、レプリケーションエージェントを実装しなくても CloudFront のキャッシュを無効にできます。詳しくは、こちらのドキュメントを参照してください。