JF Beaulieu JF Beaulieu - 1 year ago 145
ASP.NET (C#) Question

Error 502.5 - Process Failure ASP.NET Core 1.1

I'm getting this error when deploying my ASP.NET Core web app. I have done the following:


  • Enable the Web Server (IIS) role and establish role services.

  • Install the .NET Core Windows Server Hosting bundle v2.0.3

  • Restart the system or execute
    net stop was /y
    followed by
    net start w3svc



Here is my csproj file:

<Project Sdk="Microsoft.NET.Sdk.Web" ToolsVersion="15.0">

<PropertyGroup>
<TargetFramework>netcoreapp1.1</TargetFramework>
<PreserveCompilationContext>true</PreserveCompilationContext>
<AssemblyName>MyWebApplication</AssemblyName>
<OutputType>Exe</OutputType>
<PackageTargetFallback Condition=" '$(TargetFramework)' == 'netcoreapp1.0' ">$(PackageTargetFallback);dotnet5.6;portable-net45+win8</PackageTargetFallback>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="AutoMapper" Version="6.1.1" />
<PackageReference Include="AutoMapper.Extensions.Microsoft.DependencyInjection" Version="2.0.1" />
<PackageReference Include="Microsoft.AspNetCore" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Diagnostics" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="1.1.3" />
<PackageReference Include="Microsoft.AspNetCore.Routing" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Server.IISIntegration" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.Server.Kestrel" Version="1.1.2" />
<PackageReference Include="Microsoft.AspNetCore.StaticFiles" Version="1.1.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="1.1.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="1.1.2" />
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="1.1.1" />
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Configuration.UserSecrets" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Logging" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Logging.Console" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="1.1.2" />
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="1.1.2" />
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink.Loader" Version="14.1.0" />
<PackageReference Include="System.Runtime.Serialization.Json" Version="4.3.0" />
<PackageReference Include="Telerik.UI.for.AspNet.Core" Version="2017.2.621" />
</ItemGroup>

<PropertyGroup>
<UserSecretsId>8844d677-223b-4527-a648-387a65933d55</UserSecretsId>
<ApplicationIcon>wwwroot\favicon.ico</ApplicationIcon>
</PropertyGroup>

<ItemGroup>
<DotNetCliToolReference Include="BundlerMinifier.Core" Version="2.2.301" />
</ItemGroup>

<PropertyGroup Label="Globals">
<SccProjectName>SAK</SccProjectName>
<SccProvider>SAK</SccProvider>
<SccAuxPath>SAK</SccAuxPath>
<SccLocalPath>SAK</SccLocalPath>
<Version>1.0.0</Version>
</PropertyGroup>

<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<DefineConstants>$(DefineConstants);RELEASE</DefineConstants>
</PropertyGroup>

</Project>


Here is my web.config file:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<!--
Configure your application settings in appsettings.json. Learn more at https://go.microsoft.com/fwlink/?LinkId=786380
-->
<system.webServer>
<handlers>
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
</handlers>
<aspNetCore processPath="C:\Program Files\dotnet\dotnet.exe" arguments=".\MyWebApplication.dll" stdoutLogEnabled="true" stdoutLogFile=".\logs\stdout" forwardWindowsAuthToken="false" />
</system.webServer>
</configuration>


I get this error in my Event Viewer:


Application 'MACHINE/WEBROOT/APPHOST/WWW.MYWEBAPP.COM' with physical
root 'C:\inetpub\www.mywebapp.com\' failed to start process with
commandline 'dotnet .\mywebapplication.dll', ErrorCode = '0x80004005 :
80008083.

Answer Source

Most likely, you're missing the Visual C++ 2015 Runtime (available here). The hosting package attempts to download and install this during installation, but if there's a network issue or the server isn't able to connect outside (common in Enterprise environments), then it fails, and you'll need to install it manually with the redistributable.

I can't recall whether it was required or not the last time I hit this issue, but you may want to restart your server again, afterwards, just in case.

EDIT

If you're still having issues, try running your app from the command line via:

dotnet MyApp.dll

This will let you see any exceptions being raised at startup.

If you get an error like:

It was not possible to find any compatible framework version ...

Make sure you have the specific runtime for the version of ASP.NET Core your application is targeting. At the moment, that's either 2.0.3 (for all 2.X apps) or LTS 1.1.5 (for all 1.X apps). You can find the latest runtimes here.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download