如何使用自定义来源正确设置 Amazon Route 53、CloudFront

How to correctly set up Amazon Route 53, CloudFront with custom origin

我目前正在使用 Amazon Route 53 进行 DNS 设置和自定义来源(Amazon 外部的 Web 服务器)。我想添加 CloudFront,但我不太确定如何设置它?

我看过 Amazon 关于使用 Route 53 和 CloudFront 设置 S3 的指南,但我似乎无法找到任何关于使用自定义来源执行所有这些操作的信息。

我应该将其设置为按如下方式工作吗?

  1. CloudFront 从裸域的 IP 地址中提取数据
  2. 'www' 只是 CloudFront 发行版的别名

我最初计划将我的内容托管在 S3 上,但后来决定反对,因为我希望对托管有更多控制权(例如,能够使用 .htaccess 文件并禁止黑客 IP 等)。

谢谢。

假设您的起点位于 origin.domain.com,创建您的 CloudFront 分配,使用 http://origin.domain.com 作为起点。

在 Route 53 中创建您的 www.domain.com DNS 条目,使其成为 CloudFront 分配的 "Alias"。

.htaccess 的一种可能替代方法是在您的 CloudFront 分配上使用 WAF。这样,你可以permit/deny基于IP地址。

好的,这就是我最终解决问题的方法:

源服务器:

  • 在 cPanel(在我的原始服务器上)中,我创建了一个名为 origin.domain.com
  • 的子域
  • origin.domain.comdomain.com
  • 共享相同的文档根目录
  • 我的 .htaccess 文件将 domain.com 重定向到 www.domain.com:

亚马逊 CloudFront:

  • 将"Alternate Domain Names (CNAMEs)"设为www.domain.com

  • 原点设置为origin.domain.com

亚马逊 53 号公路

  • domain.com的A记录设置为我源服务器的IP地址

  • www.domain.com 的 A 记录设置为 CloudFront 分配的别名

  • origin.domain.comdomain.com

  • 的 CNAME

顺便感谢 Matt Houser 和 Bruce P 的帮助。 :)