【发布时间】:2021-04-26 20:27:32
【问题描述】:
我有一个简单、功能强大的 .NET 5.0 控制台应用程序,我试图在本地 Windows 10 Pro 开发机器上托管(用于测试)。
我将应用程序池设置为“无托管代码”和“集成”。 我创建了一个网站,指向我将应用发布到的文件夹。
我的应用程序使用 NLog,当我点击应用程序的 URL 时,我确实看到 NLog 正在正确记录事情。
但我的应用程序无法运行,当我检查 Windows 应用程序事件日志时,我看到:
Source: IIS AspNetCore Module V2
Event ID: 1007
Message: Application '/LM/W3SVC/5/ROOT' with physical root 'C:\Cabinet\Learning\EssApiGateway\Mobile.ApiGatewayPublished\' failed to load coreclr. Exception message:
Managed server didn't initialize after 120000 ms.
File Version: 15.0.21076.5. Description: IIS ASP.NET Core Module V2 Request Handler.
我已经从这里安装了 .NET Core Hosting Bundle 并重新启动了 IIS: https://dotnet.microsoft.com/download/dotnet/thank-you/runtime-aspnetcore-5.0.5-windows-hosting-bundle-installer
我不能在 Windows 10 Pro IIS 上托管 .NET 5 ASP.NET 控制台应用程序吗?
谢谢,布伦特
【问题讨论】:
-
这可能是您的项目的问题。建议你先部署一个核心模板项目
-
叮,我的项目是从模板创建的,是一个非常基础的项目。它是一个 API 网关。我所做的就是安装 Ocelot 17.0 包并对其进行配置。当我在 VS.NET 中运行我的项目时,它运行并正常运行 - 它将传入请求传递给我在 ocelot 配置文件中设置的路由,传递给另一个包含实际 api 的项目。这似乎是 IIS AspNetCoreModule 和 Windows 10 IIS 的问题,因为这是在尝试加载 coreclr 时引发错误的原因。