C# IIS和NET Core HTTP错误500.30-进程内ANCM启动失败。NET Core 3.1

C# IIS和NET Core HTTP错误500.30-进程内ANCM启动失败。NET Core 3.1,c#,asp.net,iis,.net-core,C#,Asp.net,Iis,.net Core,我已经从模板在.NET Core中创建了应用程序-具有角度和身份验证。净核心3.1 在属性->调试->IIS配置文件中,我将托管模型设置为进程外。但在Web.config中,我仍在处理中。 我已从此网站安装了ASP核心运行时: 当我以IIS Express运行我的项目时,它可以工作。 但是,当我将已发布的文件复制到IIS文件夹时,出现错误: HTTP Error 500.30 - ANCM In-Process Start Failure Common solutions to this iss

我已经从模板在.NET Core中创建了应用程序-具有角度和身份验证。净核心3.1 在属性->调试->IIS配置文件中,我将托管模型设置为进程外。但在Web.config中,我仍在处理中。 我已从此网站安装了ASP核心运行时: 当我以IIS Express运行我的项目时,它可以工作。 但是,当我将已发布的文件复制到IIS文件夹时,出现错误:

HTTP Error 500.30 - ANCM In-Process Start Failure
Common solutions to this issue:
The application failed to start
The application started but then stopped
The application started but threw an exception during startup
Troubleshooting steps:
Check the system event log for error messages
Enable logging the application process' stdout messages
Attach a debugger to the application process and inspect
For more information visit: https://go.microsoft.com/fwlink/?LinkID=2028265 
我已经尝试了许多来自互联网的解决方案,因为错误是众所周知的,但没有结果

我的网络信息:

C:\tasks\TestApp\WebApplication2\WebApplication2>dotnet --info
.NET Core SDK (reflecting any global.json):
 Version:   3.1.300
 Commit:    b2475c1295

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17763
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\3.1.300\

Host (useful for support):
  Version: 3.1.4
  Commit:  0c2e69caa6

.NET Core SDKs installed:
  1.1.0 [C:\Program Files\dotnet\sdk]
  2.0.2 [C:\Program Files\dotnet\sdk]
  2.1.4 [C:\Program Files\dotnet\sdk]
  2.1.202 [C:\Program Files\dotnet\sdk]
  2.1.507 [C:\Program Files\dotnet\sdk]
  2.1.508 [C:\Program Files\dotnet\sdk]
  2.2.103 [C:\Program Files\dotnet\sdk]
  3.0.100 [C:\Program Files\dotnet\sdk]
  3.1.300 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:
  Microsoft.AspNetCore.All 2.1.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.1.18 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.All 2.2.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All]
  Microsoft.AspNetCore.App 2.1.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.1.18 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 2.2.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.AspNetCore.App 3.1.4 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 1.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 1.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.12 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.18 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.2.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.1.4 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
  Microsoft.WindowsDesktop.App 3.1.4 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

To install additional .NET Core runtimes or SDKs:
  https://aka.ms/dotnet-download


我已将进程内更改为进程外,现在我的配置如下所示:

<system.webServer>
    <handlers>
      <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
    </handlers>
    <aspNetCore processPath="dotnet" arguments=".\WebApplication2.dll" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="OutOfProcess" />
  </system.webServer>

您是否注意到您的发布配置文件显示为

因此,请转到项目的根文件夹,用记事本打开.csproj

然后在进程中修改

进程外
并重新出版

或者您可以尝试将发布配置文件从
InProcess
修改为
OutofProcess
,然后进行修改

hostingModel=“inprocess”
hostingModel=“OutOfProcess”
,从IIS web.config中的asp.net核心处理程序执行。

您只需在ASP.NET核心应用程序文件夹中编辑
web.config
。默认情况下,它位于
wwwroot
文件夹中

AspNetCoreHostingModel
hostingModel
的值更改为
OutOfProcess


现在我知道由dotnet命令生成的项目是有效的:

dotnet new mvc
dotnet restore
dotnet build
dotnet publish
当我将文件从publish文件夹复制到wwwroot/myapp文件夹时,它就能工作 但当我在Visual Studio中打开此项目并保存项目时,它会创建.sln文件。然后我从VisualStudio发布,但它不起作用。
通过
dotnet
发布与通过Visual Studio发布有什么区别?

在标题整整一天之后,我找到了一个很好的解决方案,请注意以下几点:-

  • 通过cmd转到您的项目文件夹
  • 键入dotnetpublish--e/:output(注意这将在e驱动器输出中发布代码) 文件夹)
  • 通过cmd转到输出文件夹
  • 键入dotnet(这将在localhost:5003中运行应用程序)
  • 如果上述步骤出现任何问题,这将显示在cmd中,我面临的问题是, 其中缺少一个文件夹。一旦我添加了文件夹,问题就解决了

  • 类似问题的常见原因有很多,但您确实应该仔细检查
    https://go.microsoft.com/fwlink/?LinkID=2028265
    如错误消息所示。对不起,我写了一些诊断,但您能告诉我如何打开网站吗对于在Jexus Manager中打开的网站,会显示一个名为ASP.NET Core Diagnostics的操作来检查IIS网站,您可以按照下面的说明查看我的问题,也许会help@VolodymyrBilyachat:我已更改为\\?\%home%\LogFiles\stdout但没有帮助我已将进程内更改为进程外,描述在我的字典里post@Robert清理根文件夹,然后编辑csproj并重新发布应用程序怎么样?@Robert请记住在部署后重新提交应用程序。我做了,但结果是错误的same@Robert日志应显示在。\logs\中,而不是\?\%home%\LogFiles\stdout中。您是否已手动创建日志文件夹并重现此问题?此外,您是否尝试将应用程序池标识设置为本地系统?默认情况下,dotnet生成纯进程外项目和IIS生成进程内项目。我认为您的IIS和vs配置仍然有问题。
    <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
    
    dotnet new mvc
    dotnet restore
    dotnet build
    dotnet publish