【问题标题】:Enabling SSL for S3, serve index.html by default为 S3 启用 SSL,默认提供 index.html
【发布时间】:2016-11-30 19:40:42
【问题描述】:

我有一个要使用 SSL 的 S3 存储桶。我也想默认提供 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(当前已设置)或使用 CloudFlare 的灵活 SSL 的解决方案来解决此问题?我正在尝试在不牺牲安全性的情况下降低成本。

【问题讨论】:

  • 仔细阅读定价表。在美国和欧洲,使用 CloudFront + S3 与单独使用 S3 的成本基本相同。

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


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-12-05
    • 2019-10-15
    • 2020-05-04
    • 1970-01-01
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多