CloudFront 自定义对象缓存不起作用

牛仔

我已经使用自定义源(无 S3)设置了 CloudFront。自定义源提供带有 cachecontorl 标头的文件:

 curl -I https://origin-site/assets/common.css?v=12345

HTTP/1.1 200 OK
Cache-Control: max-age=86400

我已将 CloudFront 配置为自定义 MinTTL、DefaultTTL 和 MaxTTL。

在 CloudFormation 中:

    CacheBehaviors:
      - TargetOriginId: !Sub 'xxx-${Environment}'
        PathPattern: "assets/*"
        ViewerProtocolPolicy: redirect-to-https
        Compress: true
        MinTTL: 0
        DefaultTTL: 30672000
        MaxTTL: 30672000
        AllowedMethods:
          - HEAD
          - GET
          - OPTIONS
        CachedMethods:
          - HEAD
          - GET
          - OPTIONS
        ForwardedValues:
          QueryString: true
          Cookies:
            Forward: none

现在我在控制台中看到自定义设置和正确的值。我什至在它之后做了一个失效。

现在我通过 CDN 访问资产:

curl -I https://cdn-cloudfront-site/assets/common.css?v=12345
HTTP/1.1 200 Connection Established
Proxy-Agent: IWSS
Date: Mon, 18 Nov 2019 13:05:29 GMT

HTTP/1.1 200 OK
Content-Type: text/css
Content-Length: 104120
Connection: keep-alive
Cache-Control: max-age=86400
Last-Modified: Fri, 15 Nov 2019 10:15:38 GMT
Accept-Ranges: bytes
ETag: "0415ea09d9bd51:0"
Server: Microsoft-IIS/10.0
X-Content-Type-Options: nosniff
Access-Control-Allow-Origin: *
Date: Mon, 18 Nov 2019 13:05:30 GMT
Vary: Accept-Encoding
X-Cache: Miss from cloudfront
Via: 1.1 b912dc97777020eb19579888add26978.cloudfront.net (CloudFront)
X-Amz-Cf-Pop: FRA50-C1
X-Amz-Cf-Id: 46wPzKf7v7A2vTbWQMRVZf2V8KCPdCtZSCdY9P82MtDLKJXe3TxskQ==

先是失误,然后是命中,没关系。但是我想要Cache-Control: max-age=86400asCache-Control: max-age=30672000但是这不是改变了吗?我在这里缺少什么?

更新:我读到:

您可以通过许多有趣的方式使用这些选项!例如,如果您未在源上设置任何缓存控制标头,则可以使用默认 TTL 指定边缘站点的缓存持续时间。或者,您可以通过将所有三个值(最小值、最大值和默认值)设置为相同的值来完全覆盖由原点设置的缓存控制标头。

但是我的原点一直没有被检查?

詹姆斯·迪恩

您在 CloudFront 配置中定义的 TTL 是 CloudFront 本地的,以了解您希望在 CloudFront 上缓存多长时间,但这并不意味着 CloudFront 将添加缓存控制标头。CloudFront 不添加缓存控制标头,但如果标头是由源设置的,它会遵守标头。

CloudFront 缓存控制

上面的链接有一个表格,如果源设置了缓存控制标头,并且设置了最小、最大、默认 TTL,则该表格将为您提供有关 CloudFront 行为的信息。

缓存控制标头应由 Origin 添加或使用 Lambda@edge

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章