Aspnet 核心在哪里可以找到项目的默认应用程序池名称

Aspnet core where to find default app pool name of a project

当我试图在 wwwroot 中保存静态文件时,我的 aspnet 核心应用程序抛出:

UnauthorizedAccessException: Access to the path <path> denied.

我已经在这里找到了解决方案:,但我无法获得正确的应用程序池名称:DefaultAppPool 和 IIS AppPool\DefaultAppPool 不起作用。在哪里可以找到它?

您可以通过转到 Application Pool -> Add Application Pool 创建一个新的应用程序池 如下,

打开 IIS 管理器,select 左侧窗格中的网站,然后单击右侧窗格中的 Basic Settings。它将显示一个模态对话框,您可以从这里找到您的应用程序池使用的应用程序池

接下来,select 左窗格中的应用程序池,然后单击右窗格中的 Advanced Settings。它将显示应用程序池属性。 Identity 属性 设置为 ApplicationPoolIdentity

注意: 由于您正在部署 ASP.NET 核心应用程序,请确保您的 .NET CLR Version 属性 设置为 No Managed Code

接下来为应用程序池用户设置写入权限,select 在左窗格中单击您的网站,右键单击然后单击 Edit Permissions。在打开的对话框中,转到安全选项卡,然后单击 Edit。单击 Add,然后输入应用程序池标识用户。应用程序池用户的格式为 IIS AppPool{应用程序池名称} 例如,对于 DefaultAppPool,用户名将为 IIS AppPool\DefaultAppPool。接下来单击 Check Names 按钮,如果名称有效,用户名将在 TextArea 中带有下划线。最后点击OK.

接下来使用 IIS 应用程序池用户 selected,选中 Modify 复选框并单击“确定”。