【问题标题】:SSL on Amazon S3 as "static website"Amazon S3 上的 SSL 作为“静态网站”
【发布时间】:2014-08-11 12:48:46
【问题描述】:
我在 S3 上有一个存储桶,它需要利用“静态网站”功能才能利用路由规则功能。启用此功能会破坏内置的 ssl 证书。在使用静态网站托管时,是否有内置机制支持 S3 存储桶上的 SSL 请求?如果不存在,这似乎是功能上的重大缺失。
另外请注意,我需要它在 CloudFront 之外运行,因为托管的 CSS 存在 CORS 问题,只有 S3 存储桶可以通过其 CORS 配置选项解决。
谢谢。
【问题讨论】:
标签:
ssl
amazon-web-services
amazon-s3
【解决方案1】:
静态托管和 SSL 不能一起使用。如您所知,您可以在 REST 端点上使用 ssl 通配符证书,但随后您会丢失路由规则。而且,正如您显然发现的那样,除非您有非常慷慨的 CORS 政策,否则 Cloudfront 对 CORS 的支持在某种程度上是有限的。
2013-05-10 来自 AWS 产品经理:
感谢您的所有反馈。 S3 静态网站托管当前不支持 SSL 证书。我们可能会考虑在未来添加此支持。请继续提供您的反馈!
https://forums.aws.amazon.com/thread.jspa?threadID=60821#450167
想到的唯一值得注意的替代方案(我过去成功实施过)是在同一区域的 EC2 上使用反向代理(HAProxy?Nginx?Apache?甚至可能是 stunnel4?其他?)终止 SSL 并将请求代理到 S3。在同一个区域,EC2 和 S3 之间没有带宽费用,因此唯一的成本是实例的成本......最终仍可能低于使用 Cloudfront 的成本,并且性能应该相当(没有缓存方面,当然)。