为 gsutil rsync 设置默认 cache-control header
Setting default cache-control header for gsutil rsync
由于很遗憾无法为存储桶设置默认值 cache-control header(确实应该...),是否可以指定默认值 [=16] =] header 用于 gsutil rsync 命令?或者除此之外,以编程方式获取在 rsync 期间实际更改的所有文件的列表的简单方法,我们可以将其传递给 setmeta 命令?
由于我们有很多文件在每次部署时都会发生变化,因此我们必须在每次部署后对 ** 执行 setmeta,这会花费不合理的时间...但还没有找到更好的方法可靠地确保云存储桶中所有文件的 cache-control headers 正确,因为无法为桶本身或 rsync 命令设置正确的默认值。有没有更好的方法来实现这个目标?我们缺少什么?
如果您希望上传的所有文件都使用相同的 Cache-Control header,您可以使用 gsutil -h 选项让 gsutil rsync 命令设置 Cache-Control header秒。示例:
gsutil -m -h "Cache-Control:private, max-age=0, no-transform" rsync -r ./dir gs://my-bucket
根据您的需要,您还可以no-cache
gsutil -m -h "Cache-Control:no-cache" rsync -r ./dir gs://my-bucket
由于很遗憾无法为存储桶设置默认值 cache-control header(确实应该...),是否可以指定默认值 [=16] =] header 用于 gsutil rsync 命令?或者除此之外,以编程方式获取在 rsync 期间实际更改的所有文件的列表的简单方法,我们可以将其传递给 setmeta 命令?
由于我们有很多文件在每次部署时都会发生变化,因此我们必须在每次部署后对 ** 执行 setmeta,这会花费不合理的时间...但还没有找到更好的方法可靠地确保云存储桶中所有文件的 cache-control headers 正确,因为无法为桶本身或 rsync 命令设置正确的默认值。有没有更好的方法来实现这个目标?我们缺少什么?
如果您希望上传的所有文件都使用相同的 Cache-Control header,您可以使用 gsutil -h 选项让 gsutil rsync 命令设置 Cache-Control header秒。示例:
gsutil -m -h "Cache-Control:private, max-age=0, no-transform" rsync -r ./dir gs://my-bucket
根据您的需要,您还可以no-cache
gsutil -m -h "Cache-Control:no-cache" rsync -r ./dir gs://my-bucket