【问题标题】:ASP.NET Core application not starting in IIS (targets net461)ASP.NET Core 应用程序未在 IIS 中启动(针对 net461)
【发布时间】:2018-08-17 15:12:16
【问题描述】:

我有针对 net461 框架的 .NET Core Web 应用程序。我试图将它发布到 IIS。我关注了这个guide 并在访问页面后得到了这个:

我检查了以下内容:

  • 有文件夹 .\logs\stdout 并且 IIS 可以完全控制读/写,启用日志记录但不创建日志文件
  • AppPool 已选择无托管代码
  • 事件查看器中,Windows 日志/应用程序下没有显示错误
  • 在 IIS 日志中没有有用的信息

然后我决定让空的 .NET Core 应用程序也以 net461 为目标并将其部署到 IIS。我遵循完全相同的步骤和这个空的“Hello World!”应用程序有效。

然后我注意到不工作的应用程序有 ASP.NET 部分而其他没有。这是为什么呢?

【问题讨论】:

  • 仔细检查您的应用程序池
  • 您的 web.config 中的 <aspNetCore /> 元素上是否有 stdoutLogEnabled="true" 属性?
  • 我不确定你所说的使用 .NET Core Web 应用程序定位 net461 框架是什么意思。您能否在解决方案资源管理器中右键单击您的 asp.net Web 应用程序项目,然后单击编辑并检查 <TargetFramework>。我认为您的 Web 应用程序针对的是 .NET Framework 而不是 .NET Core,这就是为什么当您尝试使用 No Managed Code 在 AppPool 下托管它时会导致错误
  • 单独运行app能成功吗?
  • @MohsinMehmood 看起来不是这样。 ASP.NET Core 应用程序可以以net461 框架为目标,并在带有No Managed Code 的AppPool 下运行

标签: .net iis asp.net-core


【解决方案1】:

在我将环境变量ASPNETCORE_DETAILEDERRORSASPNETCORE_CAPTURESTARTUPERRORS 设置为true 后,我能够在浏览器中看到异常并成功调试问题。

https://docs.microsoft.com/en-us/aspnet/core/fundamentals/host/web-host?view=aspnetcore-2.1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-03
    相关资源
    最近更新 更多