IIS и NET Core HTTP Ошибка 500.30 - сбой при запуске ANCM. net core 3.1 - PullRequest
0 голосов
/ 25 мая 2020

Я создал приложение в. NET Ядро из шаблона - с Angular и аутентификацией. . NET Core 3.1 В разделе «Свойства» -> «Отладка» -> для профиля IIS я установил «Модель хостинга» как «Вне процесса». Но в Web.config у меня все еще в процессе. Я установил ASP Core Runtime с этого сайта: https://dotnet.microsoft.com/download/dotnet/current Когда я запускаю свой проект как 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 

Я пробовал много разрешений из inte rnet, потому что ошибка хорошо известна, но безрезультатно.

Моя до tnet информация:

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

Я изменил InProcess на OutOfProcess, теперь моя конфигурация выглядит так:

<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>

И я получаю сообщение об ошибке:

An error occurred while starting the application.

Ответы [ 4 ]

0 голосов
/ 25 июня 2020

После прохождения целого 1 дня я нашел отличное решение, пожалуйста, следующий пункт: -

  1. go в папку вашего проекта через cmd.
  2. введите do tnet publi sh --e /: output (обратите внимание, что это опубликует sh код в выходной папке диска e)
  3. go в папку вывода через cmd
  4. введите do tnet (это запустит приложение на localhost: 5003)
  5. Если возникнет какая-либо проблема с вышеуказанным шагом, это будет отображаться в cmd, я столкнулся с проблемой, когда одна папка отсутствует. Как только я добавил папку, проблема решилась.
0 голосов
/ 26 мая 2020

enter image description here

Вы можете просто отредактировать web.config внутри ASP. NET основной папки приложения. По умолчанию он находится внутри папки wwwroot.

Измените значение AspNetCoreHostingModel или hostingModel на OutOfProcess.

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
  <location path="." inheritInChildApplications="false"> 
    <system.webServer>
      <handlers> 
        <add name="aspNetCore" path="" verb="" modules="AspNetCoreModule" resourceType="Unspecified" /> 
      </handlers> 
      <aspNetCore processPath=".\fad.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="OutOfProcess" /> 
    </system.webServer> 
  </location> 
</configuration> 
<!--ProjectGuid: 4904ffb5-a4a6-4e5a-bc46-51d1171d82b0-->
0 голосов
/ 27 мая 2020

Теперь я знаю, что проект, созданный командой do tnet, работает:

dotnet new mvc
dotnet restore
dotnet build
dotnet publish

, и когда я копирую файлы из папки publi sh в папку wwwroot/myapp, он работает Но когда я открываю этот проект в Visual Studio и сохраните проект, он создаст файл .sln. Затем я публикую sh из Visual Studio, и он не работает. В чем разница между publi sh от dotnet и publi sh от Visual Studio?

0 голосов
/ 26 мая 2020

Вы заметили, что ваш профиль publi sh отображается как enter image description here

Поэтому, пожалуйста, go в папку root вашего проекта и откройте .csproj с помощью блокнот.

Затем измените <AspNetCoreHostingModel>InProcess</AspNetCoreHostingModel>

на

<AspNetCoreHostingModel>OutOfProcess</AspNetCoreHostingModel>

и повторите публикацию.

Или вы можете попробовать изменить publi sh profile с <MSDeployPublishMethod>InProcess</MSDeployPublishMethod> на <MSDeployPublishMethod>OutofProcess</MSDeployPublishMethod> Затем измените

hostingModel="inprocess" на hostingModel="OutOfProcess" из вашего asp. net основного обработчика в IIS web.config.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...