允许 http 和 https 指向我在 GCP 存储桶上托管的静态网站
Posted
技术标签:
【中文标题】允许 http 和 https 指向我在 GCP 存储桶上托管的静态网站【英文标题】:Allow http and https to point to my static website hosted on GCP bucket 【发布时间】:2020-02-12 10:21:43 【问题描述】:目标:
我想让https://example.com、http://example.com 和 www.example.com 指向我在 Google Cloud Storage 存储桶上托管的静态网站。
我的设置:
我在 Google Cloud Storage 存储桶上托管一个静态网站。
名为 www.example.com 的存储桶 我有负载均衡器,前端是 https,后端是存储桶。 在 Cloud DNS 中,我有指向存储桶的 CNAME 记录。 我有一条记录,将我的域“example.com”指向负载平衡器前端的 https IP 地址。通过上述设置,https://example.com 和 www.example.com 工作正常。
我也想允许 http。因此,我在负载均衡器“http”中添加了另一个前端。然后,我将该前端的 IP 地址添加到现有的 A 记录中。所以,现在我的 A 记录有 http 和 https 的 IP 地址。
之后,http://example.com 开始工作。但是,https://example.com 停止工作。我错过了什么吗?
【问题讨论】:
您需要一个同时响应 https 和 http 的 IP,而不是单独的 IP。 谢谢@kicken,它成功了 【参考方案1】:-
删除 HTTP 前端并重新创建它。
为 HTTP 前端使用与 HTTPS 前端相同的 IP 地址。
从您的 DNS 服务器中删除额外的 IP 地址。
然后您将不得不等待 DNS 更新,这可能需要数小时到一天的时间。您当前(旧)条目将需要过期 (TTL)。
要验证所有设置是否正确,请使用MxToolbox 等 Internet 服务来验证您的 DNS 记录。
为什么您当前的设置不起作用?您为同一个网站定义了两个 IP 地址。大多数 DNS 服务器将对这些地址进行轮询,这意味着有时您的网站将解析为一个 IP 地址(负载平衡器前端),然后解析为另一个 IP 地址(另一个前端)。但是,您的前端是按协议 (HTTP/HTTPS) 配置的,因此您有 50% 的机会针对错误的协议访问错误的前端。
【讨论】:
谢谢,它成功了。也感谢您花时间解释以上是关于允许 http 和 https 指向我在 GCP 存储桶上托管的静态网站的主要内容,如果未能解决你的问题,请参考以下文章
从 CLI 允许 GCP 实例(端口:8080)的防火墙规则