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

Azure Front Door基础配置异常:存储站点/WebApp访问报错

Azure Front Door配置问题排查:存储静态网站源400 / WebApp源404

问题描述

  • 用Azure存储静态网站作为AFD源时,一直报**"请求URI无效。HttpStatusCode: 400, ErrorCode: InvalidUri"**错误
  • 换成Azure WebApp当源,出现404错误
  • Azure门户里所有配置状态都是绿色,表面正常
  • 使用的Azure CLI脚本如下:
# Variables
ENDPOINT_NAME="test2-endpoint"
ORIGIN_NAME="test2-origin"
ORIGIN_GROUP_NAME="test2-origingroup"
ROUTE_NAME="test2-route"
STORAGE_WEB_APP_URL="prodsofadstorageapp.z9.web.core.windows.net"
#STORAGE_WEB_APP_URL="somapp.azurewebsites.net"


az afd endpoint create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --endpoint-name "$ENDPOINT_NAME" --enabled-state Enabled
az afd origin-group create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --origin-group-name "$ORIGIN_GROUP_NAME" --sample-size 1 --successful-samples-required 1 --probe-path "/" --probe-protocol "Https" --probe-interval-in-seconds 30
az afd origin create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --origin-group-name "$ORIGIN_GROUP_NAME" --origin-name "$ORIGIN_NAME" --host-name "$STORAGE_WEB_APP_URL"
az afd route create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --endpoint-name "$ENDPOINT_NAME" --route-name "$ROUTE_NAME" --origin-group "$ORIGIN_GROUP_NAME" --patterns-to-match "/*" --https-redirect Enabled --link-to-default-domain Enabled --supported-protocols Http Https

解决方案

一、修复存储静态网站源的400错误

  1. 核心问题:存储静态网站对请求头和路径转发有特定要求,默认配置下AFD的请求格式不匹配存储的要求。
  2. 修改步骤:
    • 创建源时必须指定--origin-host-header为存储静态网站的域名,确保请求头正确:
      az afd origin create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --origin-group-name "$ORIGIN_GROUP_NAME" --origin-name "$ORIGIN_NAME" --host-name "$STORAGE_WEB_APP_URL" --origin-host-header "$STORAGE_WEB_APP_URL"
      
    • 创建路由时设置强制HTTPS转发,并明确转发路径,避免路径拼接错误:
      az afd route create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --endpoint-name "$ENDPOINT_NAME" --route-name "$ROUTE_NAME" --origin-group "$ORIGIN_GROUP_NAME" --patterns-to-match "/*" --https-redirect Enabled --link-to-default-domain Enabled --supported-protocols Https --forwarding-protocol HttpsOnly --forwarding-path /
      
    • 确认存储静态网站已启用,根目录存在index.html文件,直接访问https://prodsofadstorageapp.z9.web.core.windows.net能正常返回内容。

二、修复WebApp源的404错误

  1. 核心问题:WebApp需要正确的请求头,且可能存在访问限制或路径不匹配的情况。
  2. 修改步骤:
    • 创建源时指定--origin-host-header为WebApp的域名:
      az afd origin create -g "$RESOURCE_GROUP" --profile-name "$AZURE_FRONTDOOR_PROFILE_NAME" --origin-group-name "$ORIGIN_GROUP_NAME" --origin-name "$ORIGIN_NAME" --host-name "$STORAGE_WEB_APP_URL" --origin-host-header "$STORAGE_WEB_APP_URL"
      
    • 调整路由的转发路径,如果WebApp部署在根路径,确保--forwarding-path /;如果有子路径,对应修改为实际路径。
    • 检查WebApp的访问限制,确认已添加Azure Front Door的IP范围,避免被WebApp防火墙拦截。
    • 直接访问https://somapp.azurewebsites.net验证WebApp本身能正常返回内容,排除WebApp自身部署问题。

内容的提问来源于stack exchange,提问作者Herald Gjura

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 04:12:36