IIS 7.5 e instalação do Tomcat: erro 500.19

2

Estou configurando um servidor IIS 7.5 / Tomcat 7.0.26 de 64 bits e recebi os seguintes erros quando navego para http://localhost -

Resumo de erros

HTTP Error 500.19 - Internal Server Error
The requested page cannot be accessed because the related configuration data for the page is invalid.

Informações detalhadas sobre erros

Module  IIS Web Core
Notification    BeginRequest
Handler Not yet determined
Error Code  0x80070021
Config Error    This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".
Config File \?\C:\Folder\apache-tomcat-7.0.29\jk\web.config
Requested URL   http://localhost:80/jakarta/isapi_redirect.dll
Physical Path   C:\Folder\apache-tomcat-7.0.29\jk\isapi_redirect.dll
Logon Method    Not yet determined
Logon User  Not yet determined

Origem da configuração (A linha 4 é destacada em vermelho)

3:     <system.webServer>
4:         <handlers accessPolicy="Read, Execute, Script" />
5:     </system.webServer>

Eu estou supondo que o problema é que o arquivo web.config (que é mencionado no erro de origem Config) está escrito incorretamente. Alguém pode confirmar isso? Eu não consegui encontrar uma amostra dos arquivos web.config para apagar.

Copiei toda a pasta jk (que inclui o isapi_redirect.dll, isapi_redirect.properties, uriworkermap.properties, web.config e workers.properties) de outro servidor que está funcionando, mas a configuração desse servidor é diferente, como foi originalmente configurado para executar o Tomcat de uma maneira diferente.

    
por OrangeGrover 23.07.2012 / 02:34

1 resposta

2

A pista para resolver isso está na mensagem de erro (o IIS é muito bom em explicar 500.19 erros, o que é legal):

This configuration section cannot be used at this path. This happens when the section is locked at a parent level. Locking is either by default (overrideModeDefault="Deny"), or set explicitly by a location tag with overrideMode="Deny" or the legacy allowOverride="false".

O que isto está dizendo é que você não pode especificar uma mudança de seção de configuração (neste caso <handlers accessPolicy="Read, Execute, Script"> no seu arquivo web.config .

Você pode resolver isso desbloqueando essa seção no nível do site usando o seguinte comando:

appcmd unlock config "[SITENAME]" -section:handlers /commit:apphost

Onde [SITENAME] é o nome do site onde seus bits do TomCat estão instalados.

Você também pode fazer isso no Console de Gerenciamento do IIS7:

  1. Navegue até o site e inicie o applet / recurso do Editor de configuração:

  2. NoEditordeconfiguração,selecionesystem.webServer/handlersdacaixadelistagemSeçãoeApplicationHost.config<locationpath="[SITENAME]" /> da caixa de listagem De: e clique em Desbloquear seção :

Aopção/commit:apphostnaversãodalinhadecomandoeoApplicationHost.config<locationpath=...locationnaversãodaGUIgarantemqueessaseçãosejadesbloqueadanoarquivoapplicationHost.configdoIIS,enãonoweb.config.Issosignificaqueémenosprovávelqueelesejadesfeitoporumdeslizedotecladoquandoalguémeditaoarquivoweb.config'.

Sobocapô,oqueissoadicionaéumelemento<location>semelhantea:

<locationpath="[SITENAME]" overrideMode="Allow">
    <system.webServer>
        <handlers />
    </system.webServer>
</location>

No entanto, antes de fazer isso, tente remover primeiro a linha ofensiva no seu arquivo web.config , mas suspeito que isapi_redirect.dll precise ser executável.

    
por 23.07.2012 / 02:52