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

Azure Front Door返回404但直接访问App Service正常的故障排查求助

Azure Front Door 404故障排查方案

一、先找到Front Door的请求日志

  • 登录Azure门户,定位你的Front Door资源
  • 左侧菜单选择监控 > 日志
  • 在日志查询界面,用以下语句筛选入站请求(替换为你的Front Door名称):
    AzureDiagnostics
    | where ResourceType == "FRONTDOORS" and Resource == "<你的Front Door名称>"
    | where OperationName == "Microsoft.Network/frontDoors/requestReceived"
    | project TimeGenerated, ClientIp, RequestUri, StatusCode, BackendHostname, BackendStatusCode
    
    该查询可展示Front Door转发请求的状态码、目标源站、请求路径等核心信息。

二、核心排查步骤

1. 校验原App Service的路由与访问规则

  • 检查App Service近期是否修改过路由配置:比如ASP.NET Core路由模板、URL重写规则,确认这些规则是否与Front Door转发的请求路径匹配
  • 对比直接访问与Front Door访问的请求路径差异:比如Front Door是否默认添加了前缀,或App Service要求请求必须携带特定主机头
  • 确认App Service的自定义域名绑定:如果Front Door使用的域名未在App Service的绑定列表中,转发请求的主机头可能不被认可,进而返回404

2. 检查Front Door的源与路由配置

  • 核对Front Door的源配置:确认源的主机名是否正确,是否误配置为其他环境地址
  • 查看源健康探测状态:如果原App Service的健康探测路径返回404,Front Door会判定源不可用,停止转发流量(即使你能直接访问App Service)
  • 检查路由规则:确认规则是否正确将所有请求转发到原App Service,是否存在URL重写、路径剥离等规则导致请求路径变形

3. 分析App Service的访问日志

  • 打开原App Service的监控 > 日志,查询请求记录:
    • 确认是否有来自Front Door的请求日志,若没有,说明Front Door因健康探测失败未转发流量
    • 若存在请求记录但返回404,问题出在App Service端的路由或权限配置

4. 临时验证测试

  • 在Front Door源配置中,将主机头改为App Service的默认域名(如xxx.azurewebsites.net),测试是否能正常访问
  • 临时关闭Front Door的缓存规则(若有),避免旧的404响应被缓存
  • 用curl对比两种访问方式的请求头差异:
    curl -v https://<你的App Service域名>/test-path
    curl -v https://<你的Front Door域名>/test-path
    
    重点查看Host、X-Forwarded-For等字段的区别

三、常见触发原因

  • 近期修改了App Service的路由或URL重写规则
  • Front Door的健康探测路径被修改,导致探测失败
  • App Service的自定义域名绑定过期或被误删除
  • Front Door路由规则添加了路径转换,与App Service路由不兼容

内容的提问来源于stack exchange,提问作者Don Chambers

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 13:41:39