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

服务器重装WinServer2019后Blazor Server应用报500.19错误求助

解决HTTP Error 500.19 - 0x8007000d 及IIS模块报错问题

核心原因

错误代码0x8007000d意味着IIS无法解析web.config中的配置节点,本质是缺少Blazor Server(.NET7)运行所需的IIS组件或.NET托管模块,导致配置项不被识别。


步骤1:安装.NET7托管捆绑包

Blazor Server依赖AspNetCoreModuleV2模块,该模块包含在**ASP.NET Core 7.0 Runtime (Windows Hosting Bundle)**中,必须安装:

  • 以管理员身份打开PowerShell,执行对应版本的安装命令(替换7.0.x为你应用使用的具体.NET7版本,如7.0.15):
    dotnet.exe install runtime aspnetcore --version 7.0.x
    
  • 安装完成后重启IIS服务:
    iisreset
    

步骤2:补全IIS必需组件

WinServer2019重装后默认IIS组件不全,需通过服务器管理器→添加角色和功能勾选以下组件:

  • Web服务器(IIS)→ 应用程序开发:
    • ASP.NET 4.8
    • .NET Extensibility 4.8
    • 应用程序初始化
    • ISAPI扩展
    • ISAPI筛选器
  • Web服务器(IIS)→ 常见HTTP功能:
    • 静态内容
    • 默认文档
    • HTTP错误
  • Web服务器(IIS)→ 管理工具:
    • IIS管理控制台
    • IIS管理脚本和工具

步骤3:验证IIS模块与配置

  1. 打开IIS管理器,检查服务器级模块列表,确认存在AspNetCoreModuleV2:
    • 若缺失,重新安装托管捆绑包并重启服务器;也可手动注册:
      %ProgramFiles%\IIS\Asp.Net Core Module\V2\aspnetcorev2.exe -i
      
  2. 确认web.config核心节点(你的文件未修改,只需验证IIS能识别):
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath="dotnet" arguments=".\YourBlazorApp.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
    </system.webServer>
    

步骤4:权限与应用池设置

  • 给站点目录C:\inetpub\wmi_asp分配IIS_IUSRS和IUSR用户的读取和执行权限
  • 确认应用程序池的.NET CLR版本设置为无托管代码(.NET Core应用不依赖传统.NET Framework托管)

额外建议

若以上步骤无效,直接重启服务器,确保所有组件安装生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 13:16:02