默认情况下,将Google云端存储分区中的所有文件设置为公共

时间:2016-05-06 21:40:28

标签: google-app-engine

我正在尝试默认将上传到存储桶的文件设置为公开。

在编辑存储区权限时,我会在下面找到我不理解的弹出窗口,但我找不到任何关于它的文档。如何为公众设置可用性?

“实体”选择框具有以下选项:域,组,用户,项目

目前的设置似乎没有将文件设置为公开,因为当我尝试通过CloudStorageTools::getPublicUrl($fileName, false)获得的网址访问文件时,我得到:

<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
</Error>

enter image description here

2 个答案:

答案 0 :(得分:5)

您;我想为此设置ACL:

gsutil defacl set public-read gs://bucket

答案 1 :(得分:0)

Making Data Public

活动的Google Cloud Shell

gsutil acl ch -u AllUsers:R gs://[BUCKET_NAME]/[OBJECT_NAME]
  

如果成功,则响应类似于以下示例:

Updated ACL on gs://[BUCKET_NAME]/[OBJECT_NAME]

在命令中,在选择存储桶之后的路径中,必须遵守CamelCase的书写样式。


我建议将命令分别应用于每个文件,以获取短网址。因为如果我们将权限分配给目录,则可以通过长URL访问文件。

短网址:

https://storage.googleapis.com/[BUCKET_NAME]/[FILE_PATH]/[FILE]