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

Azure应用网关WAF V2访问Web App时带端口80报错问题

Azure应用网关跳转带80端口问题解决

核心原因

Azure Web App在处理带显式80端口的请求时,跳转(尤其是Azure AD认证跳转)会将该端口追加到目标URL中,导致访问webapp.azurewebsites.net:80出现错误;手动移除端口后恢复正常,需通过配置消除端口显式暴露。

解决步骤

1. 修正后端设置配置

  • 切换后端协议至HTTPS:在应用网关的后端设置中,将目标协议改为HTTPS,端口设为443。Azure Web App默认通过443提供HTTPS服务,且默认端口在URL中可省略,跳转时不会显式携带端口。
  • 覆盖Host头(HTTP场景):若必须使用HTTP(80端口),需在后端设置中开启覆盖后端路径,同时添加自定义Host头部,值设置为Web App的FQDN(如webapp.azurewebsites.net,不带端口)。这会让Web App收到的请求Host头不含端口,跳转时不再追加80。

2. 调整Azure AD认证配置

  • 更新Azure AD应用注册的回复URL(Redirect URI):将其设置为应用网关的公网IP或自定义域名(不带端口,如http://<网关公网IP>),而非Web App的原始域名。
  • 配置Web App的允许外部重定向URL:在Web App的“身份验证”设置中,添加应用网关的地址,确保认证跳转时不会被拦截。

3. 添加URL重写规则(兜底方案)

若上述配置仍未解决问题,可在应用网关路由规则中添加URL重写:

  • 规则类型选“URL重写”,设置条件为URL包含":80"
  • 重写动作选择“替换字符串”,将:80替换为空
  • 确保该规则优先级高于默认路由规则,优先触发端口移除逻辑

关键配置验证

  • 后端池:确认已添加Web App的完整FQDN(webapp.azurewebsites.net),而非IP地址
  • 监听器:HTTP监听器需与后端设置协议匹配,HTTPS监听器需配置对应SSL证书,后端同步使用HTTPS协议
  • 健康探针:探针协议、端口需与后端设置一致,避免后端实例被标记为不健康

内容的提问来源于stack exchange,提问作者Metel Stairs

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 04:35:16