Веб-сайт не запускается при попытке использовать теневое копирование, в журнале событий нет полезной информации

Веб-сайт не запускается при попытке использовать теневое копирование, в журнале событий нет полезной информации

У меня есть веб-сайт ASP.NET Blazor, использующий .NET7, работающий на Windows Server 2022/IIS 10.

Из-заУ меня возникли некоторые проблемы с загрузками, я решил попробовать включить теневое копирование, так как это должно было избежать этой проблемы.

Я следил за информациейэтот пост в блоге, и изменил свой 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="dotnet"
                  arguments=".\MyWebSite.dll"
                  stdoutLogEnabled="false"
                  stdoutLogFile=".\logs\stdout"
                  hostingModel="inprocess">
        <handlerSettings>
          <handlerSetting name="enableShadowCopy"
                          value="true" />
          <handlerSetting name="shadowCopyDirectory"
                          value="../_ShadowCopyDirectory/" />
        </handlerSettings>
      </aspNetCore>
    </system.webServer>
  </location>
</configuration>

Однако это приводит к тому, что веб-сайт не запускается и возвращается ошибка 500. Если я закомментирую или удалю раздел <handlerSettings>, сайт работает нормально.

В журнале событий сервера отображается запись с источником IIS AspNetCore Module V2и следующим описанием...

Не удалось загрузить конфигурацию. Сообщение об исключении:

Вот и все, полное сообщение.

Мне кажется, что IIS не может прочитать файл конфигурации, что обычно происходит из-за недопустимого XML-файла, но я проверил его в валидаторе, и все оказалось в порядке.

Хотя я не думаю, что дело доходит до этого, _ShadowCopyDirectoryпапка существует, так что проблема не в этом. Я включил родительские пути, так что это тоже не должно быть проблемой, хотя, как я уже сказал, у меня есть подозрение, что дело даже не доходит до этого.

Сайт, о котором идет речь, использует .NET 7, который поддерживает эту функцию, так что это тоже не должно быть проблемой. Я проверил журналы IIS, но они не показывают ничего о случаях, когда он не загружался.

Кто-нибудь знает, что может быть не так, или где я могу поискать дополнительную информацию? Журнал событий не помог.

решение1

У меня была та же проблема, решилась удалением web.config и повторной загрузкой. Простая перезапись не помогла.

решение2

Убедитесь, что у вас установлена ​​последняя версия ANCM иПакет хостинга Windowsустановлена. Настройка была включена с использованием этого имени только после .NET 7.0 RTM - до этого работали только имена превью, и если эти имена не поддерживались, то возникали web.config ошибки.

Также убедитесь, что у вашего приложения есть права на чтение в папке Web. Это трудно сделать, но это может произойти, если вы использовали пользовательский аккаунт, у которого нет по крайней мере прав на чтение в вашем корневом каталоге Web.

Ошибки запуска пула приложений и среды выполнения ASP.NET обычно отображаются в журнале событий, поэтому просмотрите его для получения дополнительной информации о возникшей ошибке.

Связанный контент