dde*_*ele 5 reverse-proxy amazon-s3 amazon-web-services cors
我在 Amazon AWS 上部署了以下架构。
目标是在https://app.acmecorp.com公开充当入口点的 Web 应用程序(单页应用程序)。这是一个单页应用程序:
这个想法是将后端部署在弹性容器服务集群中(通过 docker)。然后将它们生成/自动扩展到由负载均衡器提供服务的目标组中。后端通过https://backend.acmecorp.com公开。(指向 AWS 负载均衡器的 DNS CNAME)
单页应用程序部署在 Amazon S3 存储桶中,并通过 S3 静态站点托管公开。(http://frontend.s3-website-us-west-2.amazonaws.com)。这也可以通过http://frontend.acmecorp.com上的 DNS CNAME 公开
我想要的是以下内容。用户通过https://app.acmecorp.com访问应用程序。这应该为静态内容提供服务。为避免 CORS 设置,我希望单页应用程序能够从该域调用 API 调用到/api
,因此对https://app.acmecorp.com/api/ ** 的调用应映射到后端。
显然这可以用 Nginx 之类的东西来完成,但我想知道亚马逊是否为此提供了一些东西,以及需要什么样的构建块才能拥有此功能
小智 3
您可以使用 Cloudfront 和反向代理方法来实现您的目标:
首先使用 app.acmecorp.com 创建您的分配作为指定的 CNAME,并为此子域上传自定义 SSL 证书。
创建两个源,一个指向您的存储桶,另一个指向您的 API 负载均衡器。稍后在配置 CDN 行为时将使用这两个源。
为 /api 创建一个以平衡器为源的行为,将所有标头传递到源(这有效地禁用边缘缓存)
配置默认行为以指向您的 S3 存储桶。
最后,将您的 app.acmecorp.com 指向 DNS 中的 CDN 端点。
Cloudfront 的起源和行为还有更多您必须注意的选项,但满足您需求的基础知识已经存在。
归档时间: |
|
查看次数: |
2878 次 |
最近记录: |