[AWS/terraform] updating CloudFront Distribution (XXXXXXXXXXX): InvalidArgument: The parameter ForwardedValues cannot be used when a cache policy is associated to the cache behavior.

はじめに

terraformはいいですね〜、わかりやすいし作った後の安心感がハンパねぇっす

問題

CloudFrontでcookieを全て通すようにしたかったので、キャッシュポリシーを作ってるときにエラーが出まして、、

CloudFrontのキャッシュポリシー作成用terraform

resource "aws_cloudfront_cache_policy" "cache_policy" {
  name        = "custom-policy"
  comment     = "Custom cache policy for my distribution"
  default_ttl = 0
  max_ttl     = 0
  min_ttl     = 0

  parameters_in_cache_key_and_forwarded_to_origin {
    cookies_config {
      cookie_behavior = "all"
    }

    query_strings_config {
      query_string_behavior = "none"
    }

    headers_config {
      header_behavior = "none"
    }
  }
}

解決方法

キャッシングが無効(default_ttl, max_ttl, min_ttl が 0)の場合に CookieBehavior を設定することができない、、、らしい

resource "aws_cloudfront_cache_policy" "cache_policy" {
  name        = "custom-policy"
  comment     = "Custom cache policy for my distribution"
  default_ttl = 0
  max_ttl     = 60 # ★変更点★
  min_ttl     = 0

  parameters_in_cache_key_and_forwarded_to_origin {
    cookies_config {
      cookie_behavior = "all"
    }

    query_strings_config {
      query_string_behavior = "none"
    }

    headers_config {
      header_behavior = "none"
    }
  }
}

おわりに

ん〜、ベストな対応とは言えないけど、どうせ先々キャッシングの設定みなおすからいいか〜

コメント

タイトルとURLをコピーしました