首页 > 解决方案 > 在 IIS 中并排运行多个 ASP.NET Core 2.2 webapps

问题描述

我正在尝试在 IIS 10 上并排运行 2 个 ASP.NET Core 2.2 webapp。我创建了 CoreTestApp1 和 CoreTestApp2(默认 VS 模板,没有添加代码),即两者都设置为进程内托管。

在我重新启动服务器(IIS Mgr)后,我在浏览器中打开的第一个 Web 应用程序(例如 CoreTestApp1)运行良好;如果我打开第二个(CoreTestApp2),我会收到错误“HTTP Error 500.0 - ANCM In-Process Handler Load Failure”。

如果我再次重新启动服务器并首先打开 CoreTestApp2,那么它运行良好,但现在 CoreTestApp1 会导致相同的错误。

我尝试并排运行 2 个 ASP.NET Framework 应用程序,效果很好。

从我找到的信息来看(例如https://docs.microsoft.com/en-us/dotnet/core/deploying/index),看来我应该能够并排运行多个核心应用程序?

我缺少一些额外的配置吗?

不确定这是否相关,但我使用了 Visual Studio 的发布(到文件夹)和这些设置......

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

解决方案


感谢 Lex 的建议和更多的谷歌搜索,我在这里找到了我的问题的答案:

在 InProcess 模式下运行的 ASP.NET Core 模块 V2 必须在其自己的专用应用程序池中运行。根据文档,您不能在单个应用程序池中使用 ASP.NET Core 模块运行多个站点或虚拟目录(Web 应用程序)。确保 IIS 上的每个 ASP.NET Core 应用程序都有自己的应用程序池。

创建额外的应用程序池并为每个 ASP.NET Core 应用程序分配自己的应用程序解决了我的问题;有关如何在此处创建应用程序池的说明


推荐阅读