首页 > 解决方案 > S3 和 AWS CloudFront 的持续交付问题

问题描述

我正在构建一系列内容网站,并构建了一个有效的 CodePipeline,它允许我将编辑推送到 github 上的 HTML 文件,这些文件会立即反映在 S3 存储桶中,从而反映在实时网站上。

我创建了一个云端发行版来为我的网站获取 HTTPS。证书和发行版工作正常,它在我的 S3 存储桶中填充了我的 index.html,但通过我的 github 管道对 S3 存储桶所做的更改反映在 S3 存储桶中,而不是 CloudFront Distribution中。

根据我的阅读,云端使用的边缘位置不会非常频繁地更新其缓存,并且当它们更新时,它们可能不会更新已编辑的index.html 文件,因为它与旧版本具有相同的名称。

每次我的一位作家需要发布前 10 名拖拉机品牌文章或实施实验性、省力的点击诱饵创意时,我都不想手动重命名 S3 中的 index.html 文件,所以这几乎是不可能的。

我的总体目标是构建一个团队可以在几分钟内快速将包含几张图片的文章添加到网站上的东西,到目前为止我已经能够做到这一点,但不能使用 HTTPS。

如果你们中的任何人都知道在不更改文件名的情况下立即更新 CloudFront 分配的好方法,那就太好了。否则我可能不得不重新开始,因为我需要保护我的网站并能够立即更新它们。

你们这些人真棒。感谢一百万的任何帮助。

标签: amazon-web-servicesamazon-s3amazon-cloudfrontlatencycontinuous-delivery

解决方案


您需要使边缘缓存中的文件无效。这是一个简单而快速的过程。

您可以自己在管道中自动执行该过程,也可以使用第三方工具,例如aws-cloudfront-auto-invalidator


推荐阅读