带有IIS的DotNetCore 2.2应用无法正常工作-HTTP错误500.0-ANCM进程内处理程序加载失败

时间:2019-09-03 16:04:48

标签: asp.net-core iis .net-core

我有一个尝试通过IIS运行的DotNet Core 2.2应用程序。但是,出现以下错误:HTTP错误500.0-尝试在浏览器中加载应用程序时,ANCM进程内处理程序加载失败。

检查日志时显示以下内容:

Error:

  An assembly specified in the application dependencies manifest (blablabla.deps.json) was not found:
    package: 'AutoMapper.Extensions.Microsoft.DependencyInjection', version: '7.0.0'
    path: 'lib/netstandard2.0/AutoMapper.Extensions.Microsoft.DependencyInjection.dll'

但是我认为这有点像鲱鱼。

以下是dotnet --info的输出:

.NET Core SDK (reflecting any global.json):
 Version:   2.2.401
 Commit:    729b316c13

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.2.401\

Host (useful for support):
  Version: 2.2.6
  Commit:  7dac9b1b51

.NET Core SDKs installed:
  2.2.401 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 2.2.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download

我尝试了以下所有操作:

  1. 在Windows 2000中将“ AspNetCoreModuleV2”更改为“ AspNetCoreModule”。 Web.config。
  2. 尝试将AspNetCoreHostingModel = InProcess切换到     Web.csproj文件中的RuntimeFrameworkName = Microsoft.AspNetCore.App。
  3. 清理并手动删除bin,obj和.vs文件夹

我的应用程序池设置为“无托管代码”(所有指南均如此)。关于此事,我在每次论坛帖子和github问题上都做了些什么,对此我有些茫然。而且,它正在与我完全相同的同事计算机上运行。

但是要注意的一件事是,如果他创建了一个应用程序池的副本(相同的设置,基本和高级,只是一个不同的名称),并尝试在其上运行它,那么它也不起作用,并且他得到了和我一样的错误。它仅适用于名为“ Core AppPool”的应用程序池,该池在安装Windows Server Hosting或SDK(不确定哪个)后会自动添加到IIS。

1 个答案:

答案 0 :(得分:1)

似乎您的应用程序池标识没有足够的权限来访问您的程序包文件夹。

我建议您尝试通过设置文件夹的安全性来设置具有足够权限的包文件夹。