为EC2实例设置CloudFront

我一直在谷歌和AWS文档上查看事情,但似乎无法钉这一个。

我有一个EC2实例设置,通过虚拟主机提供域名,我需要为网站上的内容使用CDN,主要是图像,即网站资源。

EC2实例的详细信息

  • t2.micro
  • LAMPP
  • 虚拟主机设置
  • DNS:路由53
  • 没有ELB
  • EBS
  • SSL

Cloudfront分配详细信息

  • 起源:example.com
  • 交付方式:networking

我试图做的是在源中使用域名,Cloudfront域现在redirect到原始域名以及通过https获取资源。

我没有发现任何影响网站的速度,从不同的地理位置ping,因此我怀疑这是否做得正确。

我需要解决的部分是使用EC2设置Cloudfront时,以下哪个path是正确的:

  1. 为“Origin Domain Name”使用EC2实例DNS,并在虚拟主机的“Origin Path”中添加目录名称
  2. 只在“源域名”中添加域名

谢谢您的帮助!

编辑

附加路线53细节

  • 一个logging=>名称:www.example.com,值:IP地址和路由策略:简单
  • logging=>名称:example.com,别名:是和别名目标:www​​.example.com

Edit02

在EC2,Route 53和CloudFront之间更新了AWS Setup AWS Setup

在DNS中,example.com需要是Alias设置为Yes的Alogging,指向CloudFront端点。

这意味着example.com不再指向您的原始服务器,所以您必须使用不同的名称作为原始主机。 一种select是使用EC2公有DNS名称作为实例。

默认情况下,当将请求发送到实例时,CloudFront将在Host:头中设置原始域名。 您可以在caching行为中通过将Host标头添加白名单来覆盖此内容,以便在请求中将example.com发送到源,即使用于实际查找源的DNS条目不同。

如果$ dig example.com没有返回大量的IP地址,那么您目前实际上并没有使用CloudFront。

从CloudFront返回的HTTP响应还将包含额外的标头,包括X-Amz-Cf-idX-CacheViaAge