为S3启用SSL,默认情况下为index.html提供服务

时间:2016-07-27 00:48:47

标签: amazon-web-services ssl amazon-s3

我有一个S3存储桶,我想使用SSL。我还希望默认提供index.html。

通过http访问时,my-bucket.s3-website-us-west-2.amazonaws.com/会提供index.html。但是,AWS不会为此子域维护SSL证书,因此无法通过SSL访问它。 AWS确实为my-bucket.s3.amazonaws.com/维护SSL证书,该证书确实按预期解析。但是,该域默认情况下不会提供index.html(即使index.html设置为索引文档)。

是否有解决此问题的解决方案不需要CloudFront(当前已设置)或灵活的SSL与CloudFlare?我试图在不牺牲安全性的情况下降低成本。

1 个答案:

答案 0 :(得分:2)

使用“静态网站托管”选项从S3托管网站时,只能使用HTTP。不支持HTTPS。这是使用my-bucket.s3-website-*网址完成的。

my-bucket.s3.amazonaws.com端点不是提供网站的端点。它只是S3 API的端点。这就是它支持HTTPS的原因。因此,在进行身份验证时,您可以对此端点进行GET,POST等操作(如果配置了公共ACL,则可以是匿名的)。

但它不是网站端点,不会自动提供index.html或404页面。

要充当网站并使用SSL,您必须使用前端服务,例如CloudFront。