让 Google Cloud CDN 在 404 上提供陈旧文件

问题描述

我的前端在 Nginx 上运行,我提供了一堆从 react 构建的 .chunk.js 文件

每次更新我的前端时,我都会重建 docker 镜像并更新 kubernetes 部署。但是,某些用户可能仍在尝试获取旧的 js 文件

我希望 Google Cloud CDN 为旧文件的陈旧缓存版本提供服务,但似乎it will only serve stale content in the event of errors or the server being unreachable,not a 404.

Cloud CDN 也有一种叫做“负缓存”的东西,however that seems to be for deciding how long a 404 is cached.

--> 在 Google Cloud 上临时提供旧文件的最佳方法是什么?这可以通过 Cloud CDN 完成吗?

(理想情况下没有一些需要部署旧文件的时髦构建过程)

解决方法

serveWhileStale 设置结合了 stale-while-revalidate 和 stale-if-error HTTP 缓存功能。

默认值、最小值和最大值如下:

Default: 86,400 seconds (one day)
Minimum: 0 seconds (disables the feature)
Maximum: 604,800 seconds (one week)

过时的内容在超过缓存条目过期时间(由 max-age、s-max-age 或 Expires 标头定义)后的指定限制内​​提供。

查看更多信息:https://cloud.google.com/cdn/docs/serving-stale-content

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...