我正在尝试默认将上传到存储桶的文件设置为公开。
在编辑存储区权限时,我会在下面找到我不理解的弹出窗口,但我找不到任何关于它的文档。如何为公众设置可用性?
“实体”选择框具有以下选项:域,组,用户,项目
目前的设置似乎没有将文件设置为公开,因为当我尝试通过CloudStorageTools::getPublicUrl($fileName, false)
获得的网址访问文件时,我得到:
<Error>
<Code>NoSuchKey</Code>
<Message>The specified key does not exist.</Message>
</Error>
答案 0 :(得分:5)
您;我想为此设置ACL:
gsutil defacl set public-read gs://bucket
答案 1 :(得分:0)
活动的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]