首页 > 解决方案 > 如何在云端路由 S3、EC2、aws

问题描述

我的 S3(前端代码)和 EC2(后端代码)都链接到 'example.com' 我喜欢在这里做的是引导用户查看存储在 S3 中的页面,除非他们输入'example .com/api/ '在他们的浏览器上。换句话说,'example.com/api/ ' 用于服务器访问,其他路由用于反应应用程序访问。

我应该在 AWS 中使用哪种服务?CloudFront、Route53、负载平衡。我感到很困惑。谢谢你。

标签: amazon-web-servicesamazon-s3amazon-ec2dnsamazon-cloudfront

解决方案


TLDR;为您的域创建一个 CloudFront 分配,为您需要支持的每个路径使用单独的缓存行为。您可以轻松添加其他应用程序、控制缓存或编写边缘函数(使用 Lambda@Edge 或 CloudFront 函数)以进行您可能需要的任何进一步自定义。

详细信息:CloudFront 允许您配置多个源(例如 S3、EC2、API 网关、ELB、自定义 URL 等),然后创建将流量定向到适当源的缓存行为(路由)。

在您的情况下,您将创建一个/api/*指向您的 EC2 源的缓存行为,并且默认缓存行为(将其视为您的后备路由)将指向您的 S3 源以用于所有不以/api/


推荐阅读