我有一个子域(dev.example.com),我需要将它指向cloudfront发行版(xyz.cloudfront.net)。我做了以下步骤
1)创建云阵分布。在创建云端分布时,没有在Cname字段中指定任何内容。
2)用“A”记录在Route53中创建别名记录,并将dev.example.com指向xyz.cloudfront.net。
但是这个设置不起作用。只有当我在cloudfront分发版中指定cname字段时,它才能工作。
有什么办法让这件事奏效吗?
发布于 2017-11-08 17:32:32
除非您只计划使用CloudFront域名,否则如果希望dev.example.com为这些域提供服务,则必须在“备用域名”框中包括一个或多个自定义域名(如dev.example.com)。
发布于 2017-11-10 04:06:23
CloudFront需要按其配置顺序使用所谓的CNAME条目(备用域名)来将传入的请求与发行版相关联,因此它们必须是全局唯一的。
但是,似乎与单个子域冲突的通配符有一个例外.他们不知道。
如果您使用的是子域,则应该可以通过提供以下两个发行版来绕过CloudFront对备用域名分配的限制:
blue: dev.example.com
green: *.example.com将dev.example.com的DNS记录指向green的CloudFront端点。(别在我前面.)
您会发现,尽管进行了DNS设置,但蓝色端将处理dev.example.com请求,因为CloudFront实际上并不知道或关心请求是如何被路由到它的--它使用SNI和Host头来选择正确的发行版。对于dev.example.com的请求将匹配蓝色,而不管中间路由使用哪个DNS记录。
若要将通信量切换为绿色,请从蓝色中移除备用域名,绿色上的通配符将自动开始承载流量。不需要DNS更改。
这是记录在案的行为:
如果备用域名已经存在于另一个CloudFront发行版中,即使您的CloudFront帐户拥有另一个发行版,也不能向CloudFront发行版添加备用域名。 但是,您可以添加一个通配符替代域名,例如*.example.com,它包含(与)非通配符替代域名(如www.example.com )重叠。只要使用相同的AWS帐户创建了两个发行版,重叠域名就可以位于相同的发行版或单独的发行版中。(强调后加) http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CNAMEs.html#alternate-domain-names-restrictions
发布于 2017-11-08 17:29:30
在访问CloudFront发行版时,必须指定CNAME,而不是*.cloudfront.net URL。即使您使用的是A记录。
您正在53号公路中创建一个ALIAS记录。即使没有创建CNAME记录,也必须在发行版的CNAME字段中指定DNS条目dev.example.com。
否则,CloudFront将不知道您所请求的发行版。
另一种方法是使用专用IP地址,但这将花费600美元。
https://stackoverflow.com/questions/47185740
复制相似问题