gpt4 book ai didi

amazon-web-services - 到云端和 ec2 的基于路径的路由

转载 作者:行者123 更新时间:2023-12-03 15:44:55 25 4
gpt4 key购买 nike

所以目前我们有两个 ec2 实例(比如说 A 和 B)和一个云端。

如果用户访问 www.appdomain.com/app,用户应该被路由到云端 SPA 页面。但是,如果用户访问 www.appdomain.com,则应将用户路由到 EC2 实例 A,如果用户访问 www.appdomain.com/api,则将其路由到 EC2 实例 B。

所有这些应用程序必须在同一个域中。

现在我们了解了如何使用应用程序负载均衡器设置路径规则,但也想知道如何将其设置为云端。

更新:
所以总而言之,问题是我们如何将/app 路由到 cloudfront/和/api 到 ec2。

最佳答案

All of these applications must be on the same domain.



在这种情况下,对该域的每个请求都必须首先通过 CloudFront。

您的 DNS 记录将需要指向 CloudFront(而不是 ALB),然后 CloudFront 负责将请求路由到适当的目标——通过 ALB 到 EC2 实例、到 S3 存储桶、到您需要请求去的任何地方-- 这些东西中的每一个都称为内容 origin .

一旦源由其各自的域名(不是您的站点的域名,而是专门用于相关资源的域名)指定,您就可以定义 CloudFront path patterns选择要接收每个模式的请求的来源(例如 /api* )。

将您的 DNS 更改为指向 CloudFront 后,所有请求都会首先到达那里,然后移交给下一个服务,除非 CloudFront 具有所请求对象的缓存副本——在这种情况下,CloudFront 将从其缓存中提供服务,并且不会将任何内容发送到原点。

您无法从 ALB 路由到 CloudFront,但可以从 CloudFront 路由到 ALB。

如果不使用能够匹配路径并代表请求者获取内容的反向代理,您就无法将域分割为多个不同的基于路径的内容来源——HTTP 和 DNS 不支持此类功能。 CloudFront 除了提供 CDN 服务外,也是一个反向代理。

当然,ALB 也是一个反向代理,但不像 CloudFront 支持那么多不同类型的内容来源——ALB 只支持 EC2 实例、数据中心中的服务器(在这种情况下,ALB 必须在为了到达他们),以及 Lambda 函数作为内容来源。 CloudFront 可以使用任何内容作为内容来源,只要它使用 HTTP/HTTPS 并且可以通过 Internet 访问。 (选择一个有点随机的例子,CloudFront 甚至可以使用来自另一个供应商的服务——比如谷歌云存储桶——作为内容来源,如果这是你需要做的事情,无论出于何种原因......因为这些是可通过公共(public) Internet 上的 HTTP 访问。)

关于amazon-web-services - 到云端和 ec2 的基于路径的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54446347/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com