【问题标题】:GSUTIL cp file from server to bucket and make file publicGSUTIL cp 文件从服务器到存储桶并公开文件
【发布时间】:2018-09-21 04:15:06
【问题描述】:

在我的服务器中从 php 文件中使用此命令:

exec(gsutil cp /path/to/file/on/server/namefile.ext gs://nameBucket/dir/namefile.ext > /dev/null 2>&1) 

我得到了存储桶上的 namefile.ext,在正确的目录中......但需要使这个文件公开可读。

已尝试将此命令放在文件末尾(用于公开该命令)但无事可做:

exec(gsutil iam ch allUsers:objectViewer gs://nameBucket/dir/namefile.ext > /dev/null 2>&1)

所以,上传工作,但我需要使文件可读,而无需我与存储桶的“浏览器”交互。有办法做到这一点吗?也许进入 cp 命令?

【问题讨论】:

    标签: php google-cloud-platform google-cloud-storage gsutil


    【解决方案1】:

    您使用的gsutil iam ch allUsers:objectViewer 命令旨在使存储桶中的所有对象公开可读,但您向它提供了对象的 url。

    所以,如果你想让特定文件公开可读:

    gsutil acl ch -u AllUsers:R gs://nameBucket/dir/namefile.ext
    

    如果您想让存储桶中的所有对象公开可读:

    gsutil iam ch allUsers:objectViewer gs://nameBucket/
    

    这已记录在here

    【讨论】:

    猜你喜欢
    • 2020-11-30
    • 2019-09-13
    • 2023-01-22
    • 2020-08-31
    • 2020-12-16
    • 2018-09-07
    • 1970-01-01
    • 2022-01-17
    • 2019-04-05
    相关资源
    最近更新 更多