出现该问题通常意味着AWS CloudFront未能缓存请求的内容,可能是因为CloudFront配置不正确、缓存时间过短或者内容已过期导致。修改CloudFront的行为,可以通过将适当的头信息添加到返回的HTTP响应中实现。例如,可以设置HTTP缓存时间为一周:
Cache-Control: max-age=604800
此外,可以利用CloudFront的缓存行为页面,根据具体需求设置特定的缓存行为。例如:
"CacheBehaviors": [
{
"PathPattern": "/static/*",
"AllowedMethods": ["GET", "HEAD", "OPTIONS"],
"CachedMethods": ["GET", "HEAD"],
"TargetOriginId": "S3-origin",
"ViewerProtocolPolicy": "redirect-to-https",
"MinTTL": 86400,
"MaxTTL": 31536000,
"DefaultTTL": 604800
}]