如何配置ALB规则将/svc_b请求转发至target_group_B并移除路径前缀
解决ALB路径转发时移除前缀的配置方法
要让target_group_B收到移除/svc_b前缀的请求,核心是在转发规则里配置路径重写,以AWS ALB为例,具体操作如下:
- 打开ALB的规则管理界面,找到那条优先级更高、匹配
/svc_b路径的规则 - 修改路径匹配条件为正则表达式匹配,输入正则:
^/svc_b(/.*)?$ - 在转发到target_group_B的动作中,开启「路径重写」选项,设置目标路径为
/$2 - 保存规则后测试:当请求
GET www.example.com/svc_b/something时,ALB会自动把路径重写为/something转发给target_group_B
补充说明
- 正则
^/svc_b(/.*)?$用于精准匹配所有以/svc_b开头的请求(包括直接访问/svc_b的情况);$2对应正则里的第二个捕获组(/.*),即/svc_b后面的路径部分 - 必须保证这条规则的优先级高于默认转发到target_group_A的规则,否则请求会被默认规则先拦截处理
- 其他云厂商的ALB(如阿里云CLB、腾讯云ALB)配置逻辑一致,都是在转发动作中添加路径重写规则,通过正则匹配并替换前缀
内容的提问来源于stack exchange,提问作者Howins
相关产品推荐
相关产品推荐

