CloudFront切换自定义SSL证书后,原默认域名HTTPS访问是否中断?
CloudFront切换自定义域名后原默认域名HTTPS访问是否中断?
先给你吃个定心丸:切换到自定义域名和自定义证书后,原默认域名https://foo.cloudfront.net的HTTPS访问完全不会中断,你不用急着批量修改网站里的所有图片源地址。
为什么不会中断?
我之前帮客户处理过好几次这类CloudFront域名切换的场景,CloudFront的默认域名和自定义域名是完全独立的两个访问入口:
- 默认域名
foo.cloudfront.net是CloudFront自动分配给分发的,会一直绑定到你的分发上,除非你删除这个分发本身。它会持续使用亚马逊提供的免费内置SSL证书,和你添加的*.mysite.com自定义证书互不干扰。 - CloudFront是通过**SNI(Server Name Indication)**来匹配证书的,不是靠IP识别。当用户发起请求时,TLS握手阶段会把要访问的域名告诉CloudFront,CloudFront会根据这个域名返回对应的证书:访问默认域名就用亚马逊的内置证书,访问自定义域名
media.mysite.com就用你上传的*.mysite.com证书,两者完全不冲突。
无需批量修改URL的更优方案
你完全可以保留两种域名的访问能力,不用一次性修改所有图片URL:
- 双域名并行运行:先把自定义域名
media.mysite.com添加到CloudFront分发的「备用域名(CNAMEs)」字段,上传好*.mysite.com证书(注意证书必须在AWS Certificate Manager的us-east-1区域申请,因为CloudFront的证书只能用这个区域的),然后配置DNS把media.mysite.com解析到CloudFront分发(用CNAME或者Route 53的Alias记录)。 - 逐步迁移流量:之后可以慢慢把新内容的图片URL换成自定义域名,旧的内容继续用默认域名访问。如果之后想彻底切换,还可以通过CloudFront函数或者源站设置301重定向,把
foo.cloudfront.net的请求自动跳转到media.mysite.com,这样用户访问旧URL也会自动转到新地址,不用手动修改所有代码。
额外注意事项
- 配置自定义域名时,确保DNS解析生效后再测试,避免出现访问异常。
- 如果你的分发有缓存行为,切换后可以按需清除部分缓存,确保新域名的内容正常加载。
内容的提问来源于stack exchange,提问作者Matt Andrews
相关产品推荐
相关产品推荐

