【问题标题】:Static Website hosting with Staging in AWS在 AWS 中使用暂存的静态网站托管
【发布时间】:2018-05-15 18:40:03
【问题描述】:

我们正在运行一个由 CI 自动部署到公共 S3 存储桶的静态网站。该网站是一个包含多个文件夹的 jekyll 页面。由于易于部署且无需基础架构,我们对设置非常满意。

但是我们现在有访问我们网站的流量,我们想添加一个暂存阶段。 从已知 IP 中选定的非技术人员应该可以访问此阶段。我们无法使用 S3 存储桶实现此目的,因为该存储桶需要公开。

因此,我们正在寻找一种方法来部署具有非公开暂存区域的静态网站。这可以通过 AWS 服务或其他云产品实现吗?

【问题讨论】:

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


【解决方案1】:

第一部分相对简单,只需设置另一个存储桶,部署到那里进行暂存,然后从那里到您的生产存储桶上线。

第二部分也很简单,您可以在 S3 存储桶上指定一个策略来限制对 IP 范围的访问 - 请参阅此处的示例:http://docs.aws.amazon.com/AmazonS3/latest/dev/example-bucket-policies.html#example-bucket-policies-use-case-3

我个人建议,如果可能的话,最好使用基于登录的限制(您需要在不在办公室时签字的人是 I​​P 地址限制给您带来麻烦的典型示例)无论哪种方式,您都可以对 S3 存储桶权限进行足够精细的控制,让您可以做您需要的事情

【讨论】:

    【解决方案2】:

    我们通过在 S3 存储桶中使用无法猜测的名称来解决此问题。这些名称允许子文件夹公开可用并充当静态网站的共享秘密密码。每个拉取请求都会自动部署在此存储桶中的子文件夹中。

    例子:

    s3-staging-bucket
    └ ed567c0e-dca9-44fc-b1bc-18ed5237f598/
      └ index.html
    

    【讨论】:

      猜你喜欢
      • 2017-02-28
      • 2021-07-16
      • 2018-09-14
      • 1970-01-01
      • 2012-07-27
      • 2019-05-01
      • 2021-12-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多