Sri*_*uri 1 php caching google-cloud-storage google-cloud-datastore google-cloud-platform
将pdf上传srinu.pdf到Google云存储桶(使用PHP),从云下载它工作正常,但是当我更改pdf内容并再次上传到存储桶时下载文件,它总是从旧版本pdf下载,
https://storage.googleapis.com/[bucket name]/srinu.pdf
Run Code Online (Sandbox Code Playgroud)
当我从云 GCS 控制台下载时工作正常。看来老pdf是放在GC边缘缓存上的。
如何避免边缘缓存(不改变GCS中的缓存控制和一致性)?
如果您没有设置 Google Cache 控件,那么您实际上正在使用它:
注意:默认情况下,公共可读对象带有 Cache-Control 标头,允许此类对象缓存 3600 秒。
如果需要确保更新立即可见,则应"Cache-Control:private, max-age=0, no-transform"在此类对象上设置 Cache-Control 标头。您可以使用以下命令执行此操作:
gsutil setmeta -h "Content-Type:text/html" \
-h "Cache-Control:private, max-age=0, no-transform" gs://bucket/*.html
Run Code Online (Sandbox Code Playgroud)
因此,我认为在不更改Google 缓存控制的情况下不可能禁用缓存,但请注意,缓存控制仅适用于具有公共读取 ACL 的对象,非公共数据不可缓存。
另请注意,由于对象可以缓存在 Internet 上的不同位置,因此可以忽略元数据并按照自己的喜好行事,因此无法强制缓存的对象在全局范围内过期(就像您可以强制浏览器刷新其对象一样)缓存)。
您能更好地解释一下为什么要避免使用它吗?
| 归档时间: |
|
| 查看次数: |
2787 次 |
| 最近记录: |