Erro HTTP 500.22 – Erro interno do servidor (foi detectada uma configuração do ASP.NET que não se aplica ao modo de pipeline gerenciado integrado).

Eu recebo esse erro quando vejo um aplicativo.

Erro HTTP 500.22 – Erro interno do servidor (foi detectada uma configuração do ASP.NET que não se aplica ao modo de pipeline gerenciado integrado).

.Net framework 2.0, 3.5 e 4 estão instalados e estou usando o SQL 2008. Alguém pode me dizer qual é a solução para esse erro?

Esse problema é causado pelo modo de pipeline na configuração do pool de aplicativos ao qual seu site está definido.

Curto

  • Maneira simples Altere o modo Pool de aplicativos para um que tenha o pipeline Classic habilitado.
  • Forma correta Seu aplicativo web.config / web precisará ser alterado para oferecer suporte a pipelines integrados. Normalmente, isso é tão simples quanto remover partes do seu web.config.
  • Maneira simples (prática ruim) Adicione o seguinte ao seu web.config. Veja http://www.iis.net/ConfigReference/system.webServer/validation

       

Longo Se possível, sua melhor aposta é mudar sua aplicação para suportar os pipelines integrados. Existem várias alterações entre o IIS6 e o ​​IIS7.x que causarão esse erro. Você pode encontrar detalhes sobre essas alterações aqui http://learn.iis.net/page.aspx/381/aspnet-20-breaking-changes-on-iis-70/ .

Se você não puder fazer isso, precisará alterar o pool de aplicativos, o que pode ser mais difícil, dependendo da sua disponibilidade para o servidor da web.

  • Vá para o servidor da web
  • Abra o gerenciador do IIS
  • Acesse seu site
  • Clique em Configurações avançadas no painel de ação direito
  • Em Pool de aplicativos, altere-o para um pool de aplicativos que tenha o clássico ativado.

Consulte http://technet.microsoft.com/pt-br/library/cc731755(WS.10).aspx para obter detalhes sobre como alterar o pool de aplicativos

Se você precisar criar um pool de aplicativos com pipelines clássicos, consulte http://technet.microsoft.com/pt-br/library/cc731784(WS.10).aspx

Se você não tiver access ao servidor para fazer essa alteração, precisará fazer isso por meio do servidor de hospedagem e entrar em contato para obter ajuda.

Sinta-se livre para perguntar.

No seu web.config, verifique se essas chaves existem:

      

Eu mudei meu arquivo web.config para usar HTTPMODULE de duas formas:

IIS: 6

    

IIS: 7,5

      

Usando o VS2013 .net 4.5

Eu tive esse mesmo problema.

A seção “Prováveis ​​causas” na página da mensagem de erro forneceu mais ajuda. Para mim. Ele disse: “Este aplicativo define a configuração na seção system.web / httpModules”. Em seguida, na seção “Coisas que você pode tentar” ele disse “Migrar a configuração para a seção system.webServer / modules”.

          

na seção system.webServer.

          

Isso funcionou para mim:

  1. Exclua o site originalmente criado.
  2. Recriar o site no IIS
  3. Solução limpa
  4. Construir solução

Parece que alguma coisa foi para o sul quando eu criei originalmente o site. Eu odeio soluções semelhantes a “Reinicie sua máquina e reinstale o Windows” sem saber o que causou o erro. Mas isso funcionou para mim. Rápido e simples Espero que isso ajude mais alguém.

Eu tenho um problema semelhante com o IIS 7, Win 7 Enterprise Pack. Eu mudei o pool de aplicativos como na resposta @Kirk:

Altere o modo Pool de Aplicativos para um que tenha o pipeline Classic habilitado “.mas sem sorte para mim.

Adicionando mais um passo funcionou para mim. Eu mudei o .NET Frameworkis v2.0 do meu site para o .NET Frameworkis v4.0. no ApplicationPool

Pessoalmente encontrei este problema ao migrar um site IIS6 para o IIS7, a fim de corrigir este problema eu usei esta linha de comando:
%windir%\System32\inetsrv\appcmd migrate config "MyWebSite\"
Certifique-se de fazer backup do seu web.config

Configure o pool de aplicativos para o appool .NET clássico e certifique-se de que o apppool Classic .Net esteja funcionando na linha de piple gerenciada Clássica.