HTTP Error 500.30 - ANCM In-Process Start Failure

Jazb picture Jazb · Dec 17, 2018 · Viewed 163.8k times · Source

I was experimenting with a new feature that comes with .net core sdk 2.2 that is supposedly meant to improve performance by around 400%.

Impressive so I tried it out on my ABP (ASP.NET Boilerplate) project

Template asp.net core mvc 4.0.2.0

I added the following to my web.mv.cproj file

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.AspNetCore.App" />
    <PackageReference Include="Microsoft.AspNetCore.Razor.Design" Version="2.2.0" PrivateAssets="All" />
  </ItemGroup>

Unfortunately I do not think this version of the ABP framework is compatible as the project simply fails to run and throws: (eventually)

HTTP Error 500.30 - ANCM In-Process Start Failure

I checked the logs after setting stdoutLogEnabled="true" in the web.config and re-trying - but no entries.

Has anybody had any success running the current ABP against a asp.net core in process setup?

I'm thinking this may be something only available in ABP vNext.

Answer

Adam Mikulski picture Adam Mikulski · Dec 17, 2018

In ASP.NET Core 2.2, a new Server/ hosting pattern was released with IIS called IIS InProcess hosting. To enable inprocess hosting, the csproj element AspNetCoreHostingModel is added to set the hostingModel to inprocess in the web.config file. Also, the web.config points to a new module called AspNetCoreModuleV2 which is required for inprocess hosting.

If the target machine you are deploying to doesn't have ANCMV2, you can't use IIS InProcess hosting. If so, the right behavior is to either install the dotnet hosting bundle to the target machine or downgrade to the AspNetCoreModule.

Source: jkotalik (Github)

Try changing the section in csproj (edit with a text editor)

  <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>
  </PropertyGroup>

to the following ...

 <PropertyGroup>
    <TargetFramework>netcoreapp2.2</TargetFramework>
    <AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>
    <AspNetCoreModuleName>AspNetCoreModule</AspNetCoreModuleName>
 </PropertyGroup>

Source (Github)