【问题标题】:Is it possible to use my domain for the URL for publicly available objects in a Google Cloud Storage Bucket?是否可以将我的域用作 Google Cloud Storage Bucket 中公开可用对象的 URL?
【发布时间】:2019-04-30 20:15:14
【问题描述】:

在完成所有权验证步骤后,我使用我拥有的域设置了一个 Google Cloud Storage 存储桶。

我想我可以使用命名存储桶在我自己的域下提供链接。我无法真正清楚地解释这一点,所以请多多包涵。我举个例子吧。

我上传了一个名为 test 的文件。将其公开后,我可以获得一个 URL,以便任何人都可以访问该文件。网址如下所示:

https://storage.googleapis.com/media.example.com/test

我认为我能做的是让它生成一个如下所示的链接:

https://media.example.com/test

这可能吗?我意识到我可以设置一些东西,让https://media.example.com/test 的请求重定向到https://storage.googleapis.com/media.example.com/test,但这有点乱,除此之外。

任何建议将不胜感激。

【问题讨论】:

    标签: redirect dns google-cloud-storage


    【解决方案1】:

    您可以通过在您的域的域配置中创建一个 CNAME 记录来做到这一点。

    只需为 media.example.com 添加一条 CNAME 记录,并将 c.storage.googleapis.com 作为规范名称,重定向就会自动发生。

    在此处的 GCP 文档中有一个专门用于执行此操作的完整页面:https://cloud.google.com/storage/docs/hosting-static-website

    【讨论】:

    • 哇哦,太酷了。我不认为这会起作用,因为media.example.com/test 只会重定向到c.storage.googleapis.com/test 对吗?他们是否像虚拟主机一样设置它来检测输入的 URL?
    • 基本上 URL 和域名是完全不同的东西。 URI 中斜杠之前的所有内容都是主机名,并最终解析为 IP 地址。这一切都由 DNS 处理。添加 CNAME 记录时,您正在更改域解析到的 IP 地址。现在客户端将询问现在指向 GCP 的 /test 端点的新 IP 地址。 GCP 也必须设置为侦听不同的主机名,但这都是在内部处理的(谷歌 HTTP 主机标头)。
    • 我不认为 CNAME 记录与 IP 地址有任何关系......但是,这让我感到惊讶,它知道根据原始请求的 url 服务哪个存储桶。我的意思是c.storage.googleapis.com 不能解析为storage.googleapis.com/media.example.com
    • 那么CNAME通过域名间接解析为IP地址,而例如A记录直接解析为IP。我不确定 GCP 的内部究竟是如何工作的,可能是一些花哨的重定向......
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-14
    • 2018-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多