1

客观的:

我想允许https://example.comhttp://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停止工作。我错过了什么吗?

4

1 回答 1

4
  1. 删除 HTTP 前端并重新创建它。
  2. 为 HTTP 前端使用与 HTTPS 前端相同的 IP 地址。
  3. 从您的 DNS 服务器中删除额外的 IP 地址。

然后,您将不得不等待 DNS 更新,这可能需要数小时到一天的时间。您当前(旧)条目将需要过期(TTL)。

要验证所有设置是否正确,请使用MxToolbox等 Internet 服务来验证您的 DNS 记录。

为什么您当前的设置不起作用?您为同一个网站定义了两个 IP 地址。大多数 DNS 服务器将对这些地址进行轮询,这意味着有时您的网站将解析为一个 IP 地址(负载平衡器前端),然后解析为另一个 IP 地址(另一个前端)。但是,您的前端是按协议(HTTP/HTTPS)配置的,因此您有 50% 的机会针对错误的协议访问错误的前端。

于 2019-10-15T17:46:33.183 回答