GCS上的图片上传在本地工作正常。在使用负载平衡器将Django项目部署到虚拟机示例后,设置ssl和域名时出现拒绝访问错误。
Forbidden at /admin/products/banner/add/
403 POST https://storage.googleapis.com/upload/storage/v1/b/new_zourie_app/o?uploadType=multipart: {
"error": {
"code": 403,
"message": "Access denied.",
"errors": [
{
"message": "Access denied.",
"domain": "global",
"reason": "forbidden"
}
]
}
}
: ('Request failed with status code', 403, 'Expected one of', <HTTPStatus.OK: 200>)
我已经添加了多个权限(如allUsers,存储管理员,存储对象创建者,存储对象管理员),以该桶在谷歌云平台文档中给出。还更新了桶和桶键在本地以及虚拟机示例。因此,它的工作在本地,但不能在生产已上传到gcp。
1条答案
按热度按时间rqqzpn5f1#
这是因为默认情况下,VM示例服务帐户对存储桶具有只读访问范围。您必须通过以下步骤将范围更改为读写。
1.停止部署django代码的VM。
1.打开虚拟机示例页面,然后单击虚拟机上的“编辑
1.转到服务帐户并在下面进行更改,并将存储范围设置为读写。这将解决您的问题enter image description here