无法将 Route53 配置为指向 S3 上托管的静态网站的 CloudFront 分发

Unable to configure the Route53 to point to CloudFront Distribution for the static website hosted on S3

我正在尝试将我的静态网站部署到在其前面配置 CloudFront 的 S3。但我无法配置 Route53 以与 CloudFront 集成。以下是我到目前为止所做的。

我创建了一个启用静态托管并允许 public 访问的 S3 存储桶。然后我部署/上传了文件。我可以通过 S3 网站静态访问我的网站 URL, http://www.waiyanhein.com.s3-website-eu-west-1.amazonaws.com/.

我有自己的域名,waiyanhein.com。

我正在尝试在我的静态网站前面配置 CloudFront。所以我创建了一个 CloudFront 分配。对于Origin Domain Name,我选择了S3 Bucket的静态网站URL。然后我选择“自动压缩对象”为“是”。在“备用域名 (CNAME)”文本字段中,我输入了“waiyanhein.com”。然后我创建了 CloudFront 分配。现在我的 CloudFront 分配已经启动 运行.

然后我尝试配置指向 CloudFront 分配的 Route53。我尝试创建一条记录,选择“CloudFront 分发的别名”选项。但是我在资源中找不到我的 CloudFront 分配,如下面的屏幕截图所示。

我的配置有什么问题?

我也在 CloudFront 发行版中找到了一些东西。当我编辑 CloudFront 分配时,备选域字段由于某些原因为空。然后我输入域并单击保存。然后我得到以下错误。

com.amazonaws.services.cloudfront.model.InvalidViewerCertificateException: To add an alternate domain name (CNAME) to a CloudFront distribution, you must attach a trusted certificate that validates your authorization to use the domain name. For more details, see: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html#alternate-domain-names-requirements (Service: AmazonCloudFront; Status Code: 400; Error Code: InvalidViewerCertificate; Request ID: 2d1bacd5-794c-46e5-beec-70b24fab83a6; Proxy: null)

如果它没有自动出现在下拉列表中,那么 AWS 将对其进行过滤,因为它认为您打算使用的确切域不适用于帐户中的任何 CloudFront 分配。

请检查以下是否正确:

  • 确切的记录包含在附加到 CloudFront 分配的替代名称中。
  • CloudFront 分发已完成推出。

从别名值的界面,您应该能够粘贴带有尾随 . 的 CloudFront 域名,尽管在这个新界面中某些操作目前似乎不起作用。如果是这种情况,您可以通过单击屏幕左侧的 Switch to old console link 并从此处尝试返回到原始界面。

附加评论

屏幕截图表明正在指定的替代域在附加到您的 CloudFront 分配的 us-east-1 中没有匹配的 ACM 证书。

如果您没有生成一个新的,请在添加备用域名时将其附加到您的 CloudFront 分配。