You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于Route 53跨不同API Gateway自定义域名实现地理定位路由的咨询

可行解决方案说明

你的需求并非完全无法实现,只是不能直接通过Route53地理定位路由指向自定义域名不匹配的API Gateway。以下是两种可行的实现方式:

方案一:通过CloudFront作为流量中转层

  • 配置CloudFront分发,将自定义域名us.api.example.com关联到该分发(需在us-east-1区域申请对应的ACM证书)。
  • 在CloudFront中设置基于地理位置的路由规则:
    • 针对北美区域的请求,将流量转发至APIGateway1.execute-api.us-west-2.amazonaws.com;
    • 针对欧盟区域的请求,将流量转发至APIGateway2.execute-api.eu-west-2.amazonaws.com。
  • 确保CloudFront具备访问两个API Gateway的权限(公开API Gateway默认允许访问),也可在API Gateway侧配置白名单限制仅CloudFront IP段访问。

方案二:为两个API Gateway绑定相同的自定义域名

  • 在us-west-2区域,为APIGateway1绑定us.api.example.com,配置对应区域的ACM证书(或导入已有的有效证书)。
  • 在eu-west-2区域,为APIGateway2绑定us.api.example.com,同样配置该区域的ACM证书(需确保证书覆盖此域名)。
  • 在Route53中创建地理定位类型的A记录,记录名为us.api.example.com:
    • 北美区域的路由目标设置为APIGateway1.execute-api.us-west-2.amazonaws.com;
    • 欧盟区域的路由目标设置为APIGateway2.execute-api.eu-west-2.amazonaws.com。
  • 此方案完全符合AWS文档的要求,因为两个API Gateway都绑定了us.api.example.com,请求的Host头会被API Gateway正常校验通过。

原思路不可行的核心原因

当你尝试让us.api.example.com的路由指向仅绑定了eu.api.example.com的APIGateway2时,API Gateway会校验请求的Host头(即us.api.example.com)是否与自身绑定的自定义域名匹配,不匹配则直接拒绝请求,这就是文档中该限制的本质逻辑。

内容的提问来源于stack exchange,提问作者XU NANSU

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 17:45:29