我有一个生活在S3上的网站example.com
。我已经设置了HTTP - >此站点的HTTPS转发成功。
我还有一个子域名blog.example.me
也存在于S3上,我想用它启用SSL。现在,它只支持HTTP。我使用Route 53进行路由,将Cloudfront用作CDN。
我已经找到了关于这个问题的文档,但还没有找到有用的东西。我是否必须创建新证书,或者我可以使用example.com
使用的相同证书吗?如果我可以使用相同的证书,我应该从哪个AWS开始?
答案 0 :(得分:3)
对于证书,它取决于其通配符证书是否涵盖通配符证书的整个域示例,*.example.com
您可以使用sub domain(s)
的相同证书
使用S3和Cloudfront的典型托管安全站点将遵循以下步骤
Create an S3 Bucket
存储桶名称 - 您的域名
选择您的存储桶,转到属性 - >静态网站托管,然后启用 网站托管
授予公共读取权限,以允许cloudfront从您的存储桶中读取。
Get SSL certficate/ Use existing if applies
AWS提供免费的SSL证书,可与支持SNI的浏览器配合使用。您可以导入自己的SSL证书。
CloudFront configuration
创建新的Web分发。在“原始设置”下,使用“端点” 您从S3存储桶的静态主机设置中复制了。很多别的 指南指导这一点而不解释原因 - 这是因为如果你 具有使用S3存储桶配置的重定向规则,并指定 内部AWS S3资源,重定向将不再起作用。 因此,您必须指定网站端点域以确保 重定向功能有效。
在默认缓存行为设置下,值得选择重定向 HTTP到HTTPS并缩小允许的HTTP方法 - 用于 静态网站,GET和HEAD都可以。
在云端分发设置下配置:
Route 53 configuration:
前往托管区域
选择您要使用的域或子域的托管区域
为您的网站创建记录:选择别名,然后在下拉菜单中看到您的云端分布,选择它作为您的别名目标并保存。
有关详细信息检查:https://medium.com/@willmorgan/moving-a-static-website-to-aws-s3-cloudfront-with-https-1fdd95563106