Google Cloud Storage Bucket 未与 DNS 记录上的 CNAME 相关联以将我的域用作来源

Google Cloud Storage Bucket is not associated with CNAME on DNS record for using my domain as origin

我打算通过我自己的域名supereye.co.uk使用Google云存储。

然而,

当我尝试将 supereye.co.uk 的 DNS 记录上的 CNAME 与 Google Cloud Bucket production-supeleye-co-uk 相关联时,当我尝试访问

production-supereye-co-uk.supereye.co.uk/static/default-coverpng :

<Error>
<Code>NoSuchBucket</Code>
<Message>The specified bucket does not exist.</Message>
</Error>

我该怎么办?

重要说明:这不是静态站点。这是一个在 Google Cloud Engine 上运行的 Django 应用程序,Django 有自己的 URL 路由机制。这意味着 Django 会翻译 supereye.co.uk/URL 之后的所有内容,我想知道这应该如何工作。

因此,您不能简单地添加一条 CNAME 记录来将一些流量重定向到给定 URL。 您将必须执行以下操作之一才能获得所需的结果:

  • 为将托管您的内容的新子域 data.supereye.co.uk 提供流量。
  • 通过您的 django 应用程序代理数据,这并不理想,但可以让您通过身份验证或授权轻松保护您的数据。
  • 通过 nginx 代理内容,使用 nginx 将请求(转发)代理到您的云存储桶。重量轻,实施起来相当简单。
  • 使用 gcp loadbalance 来拆分流量,您可以设置一个 LB,使用主机/路径规则在后端组和存储桶之间拆分请求。

我会选择 LB 或 nginx 代理,因为它们最容易实现(取决于您的设置)。如果您想要任何形式的访问控制,请通过您的 Django 应用程序代理请求。