我有一个亚马逊云端发行版,它为我的 CDN 创建了一个“来源”。在我的行为中,我设置了 Max TTL、Min TTL 和默认 TTL。但是我的响应标头不会返回重定向的静态文件中的 Cache-control 标头。如何设置缓存控制?我需要这个来获取谷歌页面洞察
问问题
12317 次
3 回答
6
您可以: 1. 配置源以添加 Cache-Control 标头作为响应。或者 2. 使用 Lambda@edge(查看器响应,因为您只想将其用于谷歌页面洞察)在响应中添加缓存控制标头。示例: https ://github.com/jkrnak/serverless-lambda-at-edge/blob/master/handler.js
定义 TTL 不会添加任何缓存控制标头,它用于考虑需要缓存多长时间。
于 2019-05-17T14:16:51.457 回答
6
正如James所提到的,您在创建分配时在 CF 设置中看到的 MAX TTL、MIN TTL 等定义了 CloudFront 分配和源的缓存行为。换句话说,CloudFront 应在检查源之前将资产保留在边缘站点中多长时间。例如,如果您有一个 S3 存储桶作为源,然后是 CloudFront 分配,则通过设置 MAX TTL Min TTL 等,您可以告诉 CloudFront 它应该多久检查一次源(在本例中为 S3)以进行更改。您可以在 AWS Docs 中了解有关它的更多信息。管理内容在边缘缓存中的保留时间(过期)。
在上面的示例中,您可以转到 S3 存储桶并设置Cache-Control
. 有关如何操作的更多信息,请阅读此内容。
于 2020-06-07T22:11:32.733 回答