如何通过Route 53+Application Load Balancer实现按子域名路由AWS请求
AWS ALB按子域名路由配置方案
结论
仅使用你已准备的Route 53和Application Load Balancer(ALB)即可完全实现需求,无需额外AWS服务或开发工作。
配置前提
你已完成的Route 53配置无需调整:保持Users.example.com、Servers.example.com两个子域名的解析记录均指向ALB即可。
ALB侧配置步骤
首先确保你的ALB已创建对应端口的监听器:
- 需存在监听
HTTP 80端口的监听器,用于接收http://Users.example.com的请求 - 需存在监听
HTTPS 443端口的监听器,提前通过AWS Certificate Manager(ACM)申请覆盖两个子域名的免费SSL证书并绑定到该监听器
1. 配置Users.example.com路由规则
进入ALB的HTTP 80监听器的规则管理页,添加自定义规则:
- 匹配条件选择「主机头(Host header)」,填写匹配值为
Users.example.com - 执行动作选择「转发到目标组」,指定承载A组EC2的目标组
- 调整该规则优先级,确保高于监听器的默认规则
2. 配置Servers.example.com路由规则
进入ALB的HTTPS 443监听器的规则管理页,添加自定义规则:
- 匹配条件选择「主机头(Host header)」,填写匹配值为
Servers.example.com - 执行动作选择「转发到目标组」,指定承载B组EC2的目标组
- 调整该规则优先级,确保高于监听器的默认规则
生效逻辑
规则配置完成后立即生效:
- 当
http://Users.example.com请求到达ALB 80端口时,会优先匹配到主机头规则,直接转发到A组EC2 - 当
https://Servers.example.com请求到达ALB 443端口时,会优先匹配到对应主机头规则,直接转发到B组EC2
内容的提问来源于stack exchange,提问作者dzbeda
相关产品推荐
相关产品推荐

