在我的服务器中从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 命令?
答案 0 :(得分:3)
您使用的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。