1

我有一个托管在 s3 存储桶上的静态 html 站点。我已经生成了一个免费的 ssl 证书,其中包含我导入 ACM 的 let's encrypt 。

certbot --manual --server https://acme-v01.api.letsencrypt.org/directory -d example.com -d www.example.com

我已设置 cloudfront 以使用该证书。

在我的 DNS 提供商 (namecheap) 上,我设置了一个将 www 指向云端域名的 CNAME,并且还设置了从 mydomain.com 到 www.mydomain.com 的重定向

现在如果我去

https://www.example.com,它有效

https://example.com,它会挂起直到超时

有人能告诉我我错过了什么吗?

4

1 回答 1

2

在我的 DNS 提供商 (namecheap) 上,我已经......将来自 mydomain.com 的重定向重定向到 www.mydomain.com

有问题。您的“DNS 提供商”有一个不支持 HTTPS 的重定向服务。他们不可能——重定向只能在建立 HTTPS 连接发生,并且 HTTPS 连接需要有效的证书。

重定向实际上从未在 DNS 中完成,尽管您的提供商的界面可能会给您这样的印象。重定向总是使用 Web 服务器完成的。您的提供商有一个 Web 服务器,当您将一个主机名配置为重定向到另一个主机名时,他们会提供该服务器并将 DNS 指向该服务器。

简而言之,如果不使用 Route 53 作为您的权威 DNS 主机,实际上没有办法在域顶点执行此操作。您不必将域名注册转移到 Route 53 注册商,但您需要将 Route 53 用于您的 DNS,并且您需要第二个存储桶和第二个 CloudFront 分配 - 请参阅支持 HTTPS URL 重定向使用单个 CloudFront 分配

于 2018-02-26T00:38:38.800 回答