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

IIS应用配置Windows身份验证后自动启动功能失效如何解决

IIS Windows身份验证模式下自动启动功能配置说明

IIS应用启用Windows身份验证的前提下完全可以正常使用自动启动功能。你遇到的失效问题是因为负责自动启动的IIS应用初始化模块发送的本地预热请求默认未携带Windows身份凭据,被站点的身份验证规则拦截,导致预热流程中断,看起来像自动启动失效。

配置步骤

  • 确认基础自动启动配置已正确开启:应用程序池「启动模式」设置为AlwaysRunning,对应站点「预加载已启用」设置为True,IIS已安装「应用初始化」功能组件。
  • 配置预热请求身份验证豁免:在应用的web.config文件中添加如下配置,允许IIS本地预热请求通过匿名身份访问,不影响外部用户的Windows身份验证规则:
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <security>
        <authentication>
          <anonymousAuthentication enabled="true" />
          <windowsAuthentication enabled="true" />
        </authentication>
        <authorization>
          <add accessType="Allow" users="?" />
        </authorization>
      </security>
      <applicationInitialization doAppInitAfterRestart="true">
        <add initializationPage="/" />
        <!-- 可按需添加更多预热路径,如<add initializationPage="/api/health" /> -->
      </applicationInitialization>
    </system.webServer>
  </location>
  <!-- 原有其他配置保持不变 -->
</configuration>
  • 解锁配置节(可选,仅修改web.config报错时操作):以管理员身份打开IIS管理器,进入对应站点的「配置编辑器」,定位到system.webServer/security/authentication/anonymousAuthentication配置节,点击右侧操作栏的「解锁」按钮后保存即可。
  • 验证配置:重启对应应用程序池,观察w3wp.exe进程是否在无外部访问的情况下自动启动,且应用初始化逻辑正常执行即可。

注意事项

该配置仅对IIS本地发起的预热请求开放匿名访问权限,外部用户访问站点时仍会触发Windows身份验证逻辑,不会降低站点整体安全等级。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 09:00:01