在CloudFront分配中为不同的域使用不同的SSL证书?

时间:2018-01-24 11:19:06

标签: amazon-web-services amazon-cloudfront

我有一个CloudFront发行版,我用它来在我的网站上提供静态文件(图像等)。截至今天,它使用默认的ActivityGroup域名(使用亚马逊免费的内置SSL证书)。

我想将此分发转换为" real"该网站是我网站的一部分(例如foo.cloudfront.net)。一旦我在CloudFront中进行此更改(例如,从其默认CloudFront证书切换到我自己的media.mysite.com证书),会破坏我在*.mysite.com 上提供的现有文件吗?

如果是这种情况,那么我需要以某种方式将我网站上的所有图像源切换到新域,同时为分发启用自定义SSL证书,这将是棘手的。 / p>

另一方面,阅读the docs表明CloudFront可能正在做一些工作来确定使用哪个证书:

  

CloudFront使用IP地址来识别您的发行版并确定要返回给查看者的SSL / TLS证书。

......可能吗?

有没有人有过这种转换的经验,或者有更好的方法来切换域而不必同时更改非平凡数量的URL引用?

1 个答案:

答案 0 :(得分:0)

如果我理解了这个问题,

  1. 切换到https://foo.cloudfront.net后,您的CloudFront网址media.mysite.com将有效。

  2. 您只需向域foo.cloudfront.net&添加CNAME media.mysite.com即可。在云端分发设置中将media.mysite.com定义为CNAME。另外,将您的cutom SSL证书添加到发行版中。

  3. 不,它不会破坏您的任何内容,直到&除非您已将某些依赖项硬编码到Cloudfront URL。如请求Origin应该是Cloudfront URL等。

  4. CloudFront使用IP地址来识别您的发行版并确定要返回给查看者的SSL / TLS证书。

    回答 - 只有当您选择了专用IP时才会发生这种情况,这意味着您希望为所有用户提供服务,包括不支持SNI的客户端。 以下是使用SNI&不是专用的IP -

    When CloudFront receives the request, it finds the domain name in the request header and responds to the request with the applicable SSL/TLS certificate.

    enter image description here

    我猜您没有选择专用IP。

    PS - 我昨天做过这个&它很顺利。在Edge位置上部署Cloudfront需要一些时间,请耐心等待。希望这有帮助!