Google 云存储桶用于没有域的静态服务

Google cloud bucket use for static services without having a domain

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

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

时,我会收到权限错误

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

但是我得到了典型的 403 错误

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

我找到了 similar case regarding your question. You can prevent users from listing your entire bucket directory by changing the permission from Storage Object Viewer to Storage Legacy Object Viewer. Since the Storage Object Viewer role contains the permissions for both storage.objects.get andstorage.objects.list, this will include permissions to list the objects in the bucket. For a reference list of the IAM roles that apply to cloud storage, see IAM Roles for Cloud Storage.

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

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

可以分别勾选answer of Hao Xu, and the answer of maxime