AWS 设置:将单页静态应用程序前端移动到 S3(从 Web 服务器)

AWS setup: moving single page static application frontend to S3 (from web server)

我当前的网站(具有 CORS + API 的单页应用程序)部署在 AWS EC2 实例上并通过 ALB 提供服务(主要是为了更轻松地设置 HTTPS,因为我现在只覆盖一个区域)。 Web 服务器被配置为为单页应用程序提供服务,但这就是它在前端所做的一切。我想将单页应用程序移至 S3,从而将后端与前端完全分开。问题是,关于 AWS 设置,最有效的方法是什么?我可以想出以下几点:

感谢任何帮助。

如果您尝试完全分离前端和后端的基础架构但保留相同的域,您可以使用 CloudFront。

在 CloudFront 中,您将在分配中创建 2 个源:

  • 默认来源是 S3 静态网站。
  • 然后是指向原始 ALB 的附加源。

您将配置此 CloudFront 分配的行为,以便当路径匹配特定模式时,即 api/* 它将流量转发到 ELB。如果它与此不匹配,它将默认为您的 S3 存储桶。

查看 Can I use a single CloudFront web distribution to serve content from multiple origins using multiple behaviors? 文章,其中介绍了与我概述的内容类似的行为。