我正在托管ASP.NET Core 2网站,并出现以下错误消息。
HTTP Error 500.21 - Internal Server Error
Handler "aspNetCore" has a bad module "AspNetCoreModule" in its module list
我的应用程序正在使用nopCommerce 4.00,并且服务器端已经安装了ASP.NET Core组件。
答案 0 :(得分:5)
在following this blog之后,我面临着有关如何将asp.net核心应用程序托管到IIS的相同问题。 Visual Studio已在发布的输出文件夹中添加了以下web.config。
然后我查看了IIS模块,以检查.NET核心托管捆绑包是否正确安装,并且看到了这一点,
所以我更改了web.config中的模块,
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
</handlers>
,此后它没有任何问题。
答案 1 :(得分:4)
我遇到了同样的错误,我通过settinig stdoutLogEnabled =“ true”
启用了web.config文件中的日志<aspNetCore processPath=".\site01.exe" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" />
我发现我缺少正确版本的 Microsoft.AspNetCore.App
It was not possible to find any compatible framework version
The framework 'Microsoft.AspNetCore.App', version '2.1.12' was not found.
- The following frameworks were found:
3.1.2 at [C:\Program Files (x86)\dotnet\shared\Microsoft.AspNetCore.App]
安装了 ASP.NET Core 2.1运行时(v2.1.16)-Windows主机捆绑安装程序
我的问题已解决。
答案 2 :(得分:2)
我有同样的错误。处理程序为AspNetCoreModule
,代码为%SystemRoot%\system32\inetsrv\aspnetcore.dll
。使用代码AspNetCoreModuleV2
将处理程序更改为%ProgramFiles%\IIS\Asp.Net Core Module\V2\aspnetcorev2.dll
可以解决此问题。
此link也很有帮助。如果链接不起作用:
如果AspNetCoreModule未正确安装在运行Microsoft Dynamics导航Web服务器组件的计算机上的IIS中,则会发生此错误。 AspNetCoreModule与Microsoft .NET Core Windows Server Hosting捆绑包一起安装。如果尚未完全安装此错误或安装已以某种方式损坏,则会出现此错误。
要解决此问题,请在“控制面板”中打开“程序和功能”,然后检查是否已安装Microsoft .NET Core Windows Server Hosting。然后,尝试以下操作之一:
如果已安装,请通过“程序和功能”通过以下方法修复 选择它,选择“更改”,然后选择“修复”。
如果未安装,请下载并安装Microsoft .NET Core- Windows Server Hosting捆绑包。
答案 3 :(得分:0)
这正是我遇到的问题。
我已经发布了类似的解决方案here,它可以解决不同的情况。
在安装 .NET Core Windows主机捆绑包,甚至安装了SDK之后,applicationHost.config
上的 AspNetCoreModule 行仍然缺失。
AspNetCoreModuleV2 在那里。
因此,我在具有这些 AspNetCoreModule 行的另一台服务器中找到了applicationHost.config
,并在损坏的服务器上更新了文件。不确定为什么没有在该特定服务器上的.NET Core安装添加它们。
我在<globalModules>
部分下添加了以下行:
<add name="AspNetCoreModule" image="%SystemRoot%\system32\inetsrv\aspnetcore.dll" />
还有<modules>
下的这个:
<add name="AspNetCoreModule" />
希望这会有所帮助。
答案 4 :(得分:0)
我遇到了同样的错误,我在 web.config 中将“AspNetCoreModule”更改为“AspNetCoreModuleV2”。工作正常