O site não inicia ao tentar usar a cópia de sombra, nenhuma informação útil no log de eventos

O site não inicia ao tentar usar a cópia de sombra, nenhuma informação útil no log de eventos

Eu tenho um site ASP.NET Blazor, usando .NET7 em execução no Windows Server 2022/IIS 10.

Devido aalguns problemas que estou tendo com uploads, decidi tentar ativar a cópia de sombra, pois isso deveria evitar esse problema.

Eu segui as informações emesta postagem do blog, e mudei meu Web.configarquivo para ficar assim ...

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

No entanto, isso faz com que o site não seja iniciado e 500 seja retornado. Se eu comentar ou remover a <handlerSettings>seção, o site funcionará bem.

Olhando no log de eventos do servidor mostra uma entrada com uma fonte IIS AspNetCore Module V2e a seguinte descrição...

Não foi possível carregar a configuração. Mensagem de exceção:

É isso, a mensagem total.

Parece-me que o IIS não está conseguindo ler o arquivo de configuração, o que normalmente ocorre porque o XML é inválido, mas verifiquei em um validador e deu certo.

Embora eu não ache que esteja chegando tão longe, a _ShadowCopyDirectorypasta existe, então esse não é o problema. Eu habilitei os caminhos dos pais, então também não deveria ser isso, embora, como eu disse, minha suspeita seja que não está indo tão longe.

O site em questão usa .NET 7, que oferece suporte a esse recurso, então esse também não deveria ser o problema. Verifiquei os logs do IIS, mas eles não mostram nada nos momentos em que houve falha ao carregar.

Alguém tem ideia do que pode estar errado ou onde posso procurar mais informações? O log de eventos não ajudou em nada.

Responder1

Eu tive o mesmo problema, resolvido excluindo web.config e reenviando. Simplesmente sobrescrevê-lo não ajudou.

Responder2

Certifique-se de que possui a versão mais recente da ANCM e doPacote de hospedagem Windowsinstalado. A configuração foi habilitada usando esse nome somente após o .NET 7.0 RTM - antes disso, apenas os nomes de visualização funcionavam e se esses nomes não fossem suportados, erros surgiriam web.config .

Certifique-se também de que seu aplicativo tenha direitos de leitura na pasta da Web. Isso é difícil de fazer, mas pode acontecer se você usar uma conta personalizada que não tenha pelo menos acesso de leitura na raiz da Web.

Os erros de inicialização do pool de aplicativos e do tempo de execução do ASP.NET geralmente aparecem no log de eventos, portanto, procure informações adicionais sobre o erro que está ocorrendo.

informação relacionada