HTTP 错误 500.21 – Internal Server Error

报错原因: 你的IIS服务器上的.net core 运行时不是最新的,导致AspNetCoreModuleV2模块缺失或者报错,意思需要你更新了!

下载最新的 .NET Core Runtime & Hosting Bundle for Windows
比如.net core 2.2 地址: .NET Core 2.2 Runtime & Hosting Bundle for Windows

注意:SDK和Runtime & Hosting 是有区别的,Runtime & Hosting iis环境里用

HTTP 错误 500.21 - Internal Server Error

处理程序“aspNetCore”在其模块列表中有一个错误模块“AspNetCoreModuleV2”

最可能的原因:

  • 使用了托管处理程序,但是未安装或未完整安装 ASP.NET。
  • 处理程序模块列表的配置中存在书写错误。
  • 在应用程序初始化期间,要么应用程序初始化功能已将 skipManagedModules 设置为 True,要么重写规则设置了映射到托管处理程序的 URL 并且还设置了 SKIP_MANAGED_MODULES=1。

可尝试的操作:

  • 如果要使用托管处理程序,请安装 ASP.NET。
  • 请确保正确指定处理程序模块的名称。模块名称区分大小写,并使用 modules="StaticFileModule,DefaultDocumentModule,DirectoryListingModule" 格式。
  • 设置映射到托管处理程序的 URL (例如 .aspx)时,请确保所有应用程序初始化重写规则都设置 SKIP_MANAGED_MODULE=0
  • 作为替代方法,请确保应用程序初始化重写规则将请求映射到非托管处理程序(例如,映射到 .htm 文件,该文件映射到 StaticFileHandler。)

详细错误信息:

模块    IIS Web Core
通知    ExecuteRequestHandler
处理程序    aspNetCore
错误代码    0x8007000d
请求的 URL    http://localhost:8080/
物理路径    D:\Users\ThinkPad\Source\repos\bin\Debug\netcoreapp2.2\publish
登录方法    匿名
登录用户    匿名

详细信息:

IIS 内核不能识别此模块。查看详细信息 »