如何使 S3 Cloudfront 上部署的 Gatsby 网站上的服务工作线程缓存失效?

To_*_*ave 5 deployment browser-cache amazon-cloudfront gatsby

我正在建立我的第一个盖茨比网站。我们将其托管在 AWS S3 上。我们也使用gatsby-plugin-offline.

到目前为止,我无法找到关于如何在新部署后使缓存失效的良好解决方案。

即使我手动取消注册 sw.js Service Worker 并通过 Devtools -> 应用程序 -> 清除存储清理站点数据,浏览器仍然会加载缓存版本(缺少添加的页面、显示旧文本内容等)。

对于部署,我使用amplify.

部署新版本时如何使旧缓存失效?

谢谢。

abu*_*ick 0

您检查过gatsby-auth-starter-aws-amplify的放大配置吗?离线插件在此启动程序中处于活动状态,并且是部署 gatsby 来放大的推荐启动程序

另一个解决方案是将s3 插件与 aws-cli 一起使用

Gatsby 的缓存文档解释了 Gatsby 正常工作的缓存规则。常见问题是由 HTML 页面的缓存引起的(HTML 文件中的缓存控制标头应该是cache-control: public, max-age=0, must-revalidate