如何在EC2实例前面设置Cloudfront?我感兴趣的是让用户点击Cloudfront url而不是EC2原点。
因此,用户不会点击ec2-52-64-xxx-xxx.ap-southeast-2.compute.amazonaws.com,而是会点击d111111abcdef8.cloudfront.net。
我的目的是通过减少EC2实例的流量和CPU负载来节省托管费用,同时为海外用户提供更快的加载时间。
我会把我的DNS指向Cloudfront url而不是EC2原点吗?
发布于 2015-10-15 01:13:28
我会把我的DNS指向Cloudfront url而不是EC2原点吗?
差不多吧。
从技术上讲,您不需要将DNS指向URL,而是将其指向主机名或IP地址,这与CloudFront的操作略有不同。
首先,尽管..。在CloudFront发行版设置中,您需要在“备用域名”框中配置CloudFront希望看到的浏览器发送的任何主机名。
对于源,输入ec2-...-compute.amazonaws.com主机名。
此时,10-15分钟后,访问CloudFront分配的URL将带您到服务器。
下一个..。如果您的DNS托管在53号路由中,那么您将进入托管区域并为这些主机名创建新的"A“记录,将"Alias”设置为"Yes“,这将导致目标框中填充CloudFront发行版,然后选择该分发版,并保存记录。
如果您的DNS不是由路由53托管的,则应该在DNS中创建CNAME记录,指向分配给CloudFront发行版的主机名,例如jozxyqkexample.cloudfront.net。这里的问题是,您不能用域的顶点/根来实现这一点,因为CNAME在那里无效.所以www.example.com可以工作,但example.com不能。这是DNS的一个限制,唯一的解决办法是为您的DNS使用路由53,因为它与CloudFront有内部集成(因此有上面提到的"Alias“记录,它使用内部查找而不是外部引用,比如CNAME)。
您还可能希望将CloudFront配置为将Host头转发回原始服务器;否则,当请求到达时,在HTTP请求中呈现给服务器的主机名将不是您的域名,而是您配置为原始主机的主机名。
当您通过CloudFront进行连接时,请确保服务器不会将您重定向回EC2主机名或IP (浏览器中的地址栏将发生更改,如果发生这种情况,您将希望修复web服务器的配置)。
发布于 2018-10-19 06:45:49
使用下面的步骤将ec2-52-64-xxx-xxx.ap-southeast-2.compute.amazonaws.com路由到d111111abcdef8.cloudfront.net。
遵循以下步骤:
ec2-52-64-xxx-xxx.ap-southeast-2.compute.amazonaws.com)备注:对于自定义SSL证书(证书应该在美国东部-1地区).
发布于 2019-01-06 23:08:52
IP在原产地将产生错误: com.amazonaws.services.cloudfront.model.InvalidArgumentException:参数来源名称不能是一个IP地址。(服务: AmazonCloudFront;状态代码: 400;错误代码: InvalidArgument;
尽管AWS文档说您可以使用IP。
公共DNS (IPv4)作为原产地提供'504错误的请求无法满足‘
当S3是S3的时候,如果S3权限有限的话,我就有过这种情况。但是EC2没有权限控制。这是公开的。
https://stackoverflow.com/questions/33137792
复制相似问题