首页 > 解决方案 > 谷歌云存储桶用于没有域的静态服务

问题描述

我有一个静态网站,我想使用谷歌存储桶。但是,由于我没有域,我想直接使用具有 allUsers 权限的存储桶来查看。

为了用户看不到存储桶的默认文件夹结构,我制作了一个负载均衡器,至少如果有人访问我的存储桶,我会直接将他们重定向到 build/index.html 但是当存储桶是公共的时我会收到权限错误(及其所有内容)

我通过创建存储桶的机器的 IP 进行了此设置。

在此处输入图像描述

但我得到了典型的 403 错误

在此处输入图像描述

标签: google-cloud-platformstaticgoogle-cloud-storageload-balancingbucket

解决方案


您不需要设置高级主机和路径规则。默认的简单主机和路径规则选项就可以了。

关于你的问题,我发现了一个类似的案例。您可以通过将权限从 更改为 来阻止用户列出您的整个存储桶Storage Object Viewer目录Storage Legacy Object Viewer。由于Storage Object Viewer角色包含 和 的权限storage.objects.getstorage.objects.list这将包括列出存储桶中对象的权限。有关适用于云存储的 IAM 角色的参考列表,请参阅适用于云存储的IAM 角色

接下来,您可以通过将 build/index.html 指定为专用页面来进行“重定向” 。至于步骤,你可以按照:

  1. index.html在存储桶的根目录中上传一个空文件。
  2. 打开存储桶设置,然后单击Edit Website Configuration
  3. 将新上传的 index.html 设置为“主页”

你可以分别查看郝旭答案和maxime的答案。


推荐阅读