Blazor Hosted (ASP. NET) HTTP Ошибка 500.19 - Внутренняя ошибка сервера - PullRequest
0 голосов
/ 14 февраля 2020

Насколько я понимаю, эта ошибка возникает, когда web.config не настроен должным образом. Однако, когда я публикую sh приложение, генерируется следующий файл web.config

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <location path="." inheritInChildApplications="false">
    <system.webServer>
      <handlers>
        <add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
      </handlers>
      <aspNetCore processPath=".\Lotus.Server.exe" stdoutLogEnabled="false" stdoutLogFile=".\logs\stdout" hostingModel="inprocess" />
    </system.webServer>
  </location>
</configuration>
<!--ProjectGuid: 85a43eb6-3576-401d-b025-a15a2cc377b6-->

Сначала я подумал об установке URL Rewrite, но это не решило проблему. Я подчеркиваю, попробовал почти все идеи, как решить эту проблему?

Страница ошибки выглядит следующим образом:

enter image description here

1 Ответ

0 голосов
/ 15 февраля 2020

У меня была такая же проблема, и я пытался ее исправить в течение 4 дней. Тогда я нашел решение.

Сначала нужно скачать do tnet хостинг 2.2.2

https://dotnet.microsoft.com/download/dotnet-core/thank-you/runtime-aspnetcore-2.2.2-windows-hosting-bundle-installer

Затем после установки попробуйте перезапустить IIS с помощью cmd (запустите от имени администратора, а затем напишите iisreset). Если страница ошибки изменилась, мы идем в правильном направлении:)

Теперь следует сказать, что вы используете неправильный модуль (что действительно так).

Откройте IIS , перейдите на свой веб-сайт и проверьте установленные модули . В списке вы должны видеть AspNetCoreModule, но не AspNetCoreModuleV2.

go to: % ProgramFiles% \ IIS \ Asp. Net Основной модуль \ V2 \ и скопируйте aspnetcorev2.dll

Затем go в % SystemRoot% \ system32 \ inetsrv \ и вставьте его

сейчас После этого откройте папку конфигурации в% SystemRoot% \ system32 \ inetsrv \, а затем откройте applicationHost.

ВАЖНО На этом этапе вам необходимо отключить iis

Now найдите эту строку:

<add name="AspNetCoreModule" image="%SystemRoot%\system32\inetsrv\aspnetcore.dll" />

и добавьте под ней:

<add name="AspNetCoreModuleV2" image="%SystemRoot%\system32\inetsrv\aspnetcorev2.dll" />

И то же самое с этим:

<add name="AspNetCoreModule" />

добавьте под ней:

<add name="AspNetCoreModuleV2" />

Теперь сохраните его, перезапишите старый и включите IIS. Go на ваш сайт, проверьте модули и в списке вы должны увидеть AspNetCoreModuleV2:

AspNetCoreModule и AspNetCoreModuleV2 в списке

...