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

发布后Azure网站遇重定向过多及AzureBlobTraceListener错误求助

嘿,你这碰到了两个关联又独立的问题,咱们一步步拆解解决:

1. 搞定「重定向次数过多(ERR_TOO_MANY_REDIRECTS)」问题

本地调试正常、部署到Azure后出循环重定向,结合你用O365身份验证的场景,大概率是HTTPS配置、身份验证回调路径、或者授权规则出了问题,给你几个排查方向:

  • 检查O365应用注册的回调URL
    确保你在Azure AD(O365)里注册的应用回调URL是HTTPS协议的(比如https://mysite.azurewebsites.net/signin-oidc,具体路径要看你用的身份验证中间件),和代码里配置的回调路径完全一致。Azure App Service默认强制HTTPS,如果你回调URL还是HTTP,就会触发循环跳转。

  • 强制全站HTTPS
    给你的应用加上HTTPS重定向规则,避免HTTP请求引发的跳转问题:

    • 如果是ASP.NET Core,在Program.cs里添加:
      app.UseHttpsRedirection();
      
    • 如果是ASP.NET Framework,在web.config里加URL重写规则:
      <system.webServer>
        <rewrite>
          <rules>
            <rule name="Force HTTPS" stopProcessing="true">
              <match url="(.*)" />
              <conditions>
                <add input="{HTTPS}" pattern="off" />
              </conditions>
              <action type="Redirect" url="https://{HTTP_HOST}/{R:1}" redirectType="Permanent" />
            </rule>
          </rules>
        </rewrite>
      </system.webServer>
      
  • 确保登录/回调/错误页面允许匿名访问
    循环重定向很常见的原因是:未授权请求被重定向到登录页,但登录页(或者OIDC回调路径、Error页面)又被设置为需要授权,导致无限循环。

    • 给OIDC的回调路径(比如/signin-oidc)加上[AllowAnonymous]
    • 你的Error.cshtml对应的Action(或者直接访问这个视图的路径)也要允许匿名,比如在对应的Controller里加:
      [AllowAnonymous]
      public ActionResult Error()
      {
          return View();
      }
      
2. 彻底清除「AzureBlobTraceListener」错误

这个是Azure App Service默认启用的诊断跟踪组件,它会尝试把应用日志写到Azure Blob存储,但你没配置对应的SAS URL,所以抛出错误。如果你不需要这个功能,直接关掉就行:

  • 方法一:在Azure Portal里关闭诊断规则
    进入你的App Service → 左侧菜单「监控」→「诊断设置」,找到所有启用了「Blob存储」的诊断配置,直接删除它们(或者如果以后需要日志,再配置你的存储账户)。

  • 方法二:在代码里强制移除跟踪器
    如果Portal的设置没生效,在web.config里添加以下配置,直接移除这个跟踪监听器:

    <system.diagnostics>
      <trace>
        <listeners>
          <remove name="AzureBlobTraceListener" />
        </listeners>
      </trace>
    </system.diagnostics>
    
  • 方法三:ASP.NET Core自定义日志提供者
    如果是ASP.NET Core项目,直接在Program.cs里清理默认日志提供者,只保留你需要的(比如控制台、调试日志):

    builder.Logging.ClearProviders();
    builder.Logging.AddConsole();
    builder.Logging.AddDebug();
    

先按这个顺序排查,应该能解决你的两个问题。如果重定向的问题还没搞定,可以看看F12里的重定向链条,确认是在哪些URL之间循环,再针对性调整授权规则~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 06:26:05