Application Gateway基于路径的路由不生效问题排查求助
Azure Application Gateway 路由404问题排查清单
1. 路径匹配规则校验
- 确认基于路径的路由规则是否添加了通配符后缀:仅配置
/api1、/api2只会精准匹配对应路径,必须配置为/api1/*、/api2/*才能匹配前缀下的所有子路径 - 确认大小写匹配配置:Application Gateway默认开启大小写敏感,你测试用的
/API1/、/API2/为大写路径,若规则写为小写/api1/会匹配失败,可在规则设置中关闭大小写敏感,或统一路径大小写格式
2. 后端路径重写配置校验
路径重写配置错误是该场景下404问题的最高发原因
- 默认配置下Application Gateway会把完整请求路径透传到后端App Service,若你的API1、API2本身没有全局
/api1、/api2路由前缀,App Service接收/api1/xxx路径的请求时会找不到对应路由返回404 - 需为两个路径规则分别配置路径重写:匹配
/api1/*的请求,重写路径为/{*_path_rest},即剥离/api1/前缀后再转发到API1的根路径;同理配置API2的路径重写规则
3. 后端HTTP设置校验
- 检查两个后端池对应的HTTP设置是否正确配置Host头覆盖:App Service默认要求请求Host头匹配自身的
xxx.azurewebsites.net域名,若你未将MyDomain.com同时绑定到两个App Service上,需要在HTTP设置中开启从后端地址中提取Host,或手动填写对应App Service的默认域名 - 确认两个路径规则分别关联了对应API的HTTP设置,未共用错误的HTTP配置
4. 后端健康状态校验
- 进入Application Gateway的
后端健康页面,查看两个后端池的健康状态:如果显示不健康,优先排查健康检查配置,默认健康检查请求后端根路径,若API根路径未返回200状态码,需自定义健康检查路径为API的存活检测接口 - 确认App Service的访问限制已放行Application Gateway所在子网的IP段,私有端点的网络策略未拦截来自Application Gateway的流量
内容的提问来源于stack exchange,提问作者Aryan M
相关产品推荐
相关产品推荐

