手动创建的应用程序池/Web 应用程序与通过发布管道使用 DevOps 代理创建的应用程序池/Web 应用程序之间存在什么区别?

问题描述 投票:0回答:1

我有一个部署到多个位置的 ASP.NET Core 应用程序,根据 IIS 应用程序池和站点是手动创建(使用 IIS 点击式 UI)还是通过 Azure 代理创建,表现出不同的行为来自发布管道(由两个任务组成:创建应用程序池和 Web 应用程序的“IIS Web 应用程序管理”任务,以及复制内容的“IIS Web 应用程序部署”任务)。

两个站点具有相同的文件和文件权限。这两个应用程序池具有相同的配置文件。

手动创建的站点运行正常。发生错误时,它会被 app.UseStatusCodePages() 指令定义的 ASP.NET Core 中间件捕获。 Azure 代理创建的站点上的异常不会由应用程序处理,而是 IIS 返回在站点级别定义的错误页面。所有站点的“错误页面”配置都是相同的(未编辑)。

我一直无法在配置中找到任何差异来解释不同的应用程序行为,但我已经在两个不同的 IIS 服务器上重现了这种差异。

任何人都可以建议另一个地方来寻找应用程序配置差异吗?

asp.net-core iis azure-pipelines-release-pipeline
1个回答
0
投票

由于文件和权限相同,应用程序池配置也相同,接下来要检查的是手动创建的站点和 Azure 代理创建的站点的 applicationHost.config 文件。

applicationHost.config文件位于%windir%\System32\inetsr

© www.soinside.com 2019 - 2024. All rights reserved.