我在我的服务器上设置了 1 年的缓存控制。
如何对 AppEngine 说“清楚!”从服务器获取新版本?
配置为Flex自定义环境
runtime: custom
env: flex
env_variables:
writecontrolEnv: 'prod'
handlers:
- url: /.*
script: this field is required, but ignored
service: gateway-prod
automatic_scaling:
min_num_instances: 1
max_num_instances: 2
resources:
cpu: 1
memory_gb: 2
disk_size_gb: 10
skip_files:
- node_modules/
network:
instance_tag: gateway
假设您的应用程序是提供静态文件 https://cloud.google.com/appengine/docs/flexible/nodejs/serving-static-files那么服务器发送的缓存参数由您的应用程序代码控制。这意味着一旦您部署带有更新参数的新版本,服务器将发送更新的值。
但问题是,缓存实际上是由客户端(或某些中间人网络设备)执行的,因此最终用户在达到(在您的情况下很长)缓存过期时间之前不会到达服务器,所以它赢了在那之前看不到更新。
您可以尝试清除浏览器缓存,希望浏览器是进行缓存的浏览器。
为了防止将来发生此类情况,您可能需要选择较短的缓存过期时间或使用一些缓存清除技术,例如this one https://stackoverflow.com/a/1922924/4495081.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)