Os Web sites e as aplicações Web dependem da disponibilidade dos conjuntos aplicacionais dos Serviços de Informação Internet (IIS). Por sua vez, os conjuntos aplicacionais dos IIS dependem do Serviço de Ativação de Processos do Windows (WAS). Se o WAS não estiver em execução ou ocorrerem erros durante o arranque ou encerramento de um conjunto aplicacional, os Web sites e as aplicações Web podem não estar disponíveis.
Verificar o executável de encerramento automático
Um ficheiro executável especificado pelo utilizador pode ser configurado para ser executado automaticamente quando um conjunto aplicacional está a ser encerrado pelo Serviço de Publicação World Wide Web (W3SVC). O ficheiro executável pode, por exemplo, redirecionar o tráfego do conjunto aplicacional para outro servidor. O ficheiro pode ser especificado no Gestor de IIS e é representado pelo atributo autoShutdownExe da secção system.applicationHost/applicationPools/failure no ficheiro ApplicationHost.config.
Se ocorrer uma falha ao executar o processo autoShutdownExe, as soluções possíveis incluem as seguintes:
Verifique se o caminho e o nome de ficheiro do programa autoShutdownExe estão corretamente especificados.
Certifique-se de que a conta do sistema tem permissões para aceder e executar o ficheiro.
Certifique-se de que o programa pode ser executado independentemente do encerramento de um conjunto aplicacional.
Verifique se o caminho e o nome de ficheiro estão corretamente especificados
Clique em Iniciar, clique em Painel de Controlo e depois clique em Ferramentas Administrativas.
Clique com o botão direito do rato no Gestor de Serviços de Informação Internet (IIS) e selecione Executar como administrador.
No painel Ligações, expanda o nome do servidor.
Clique em Conjuntos Aplicacionais. É apresentada no painel central uma lista dos conjuntos aplicacionais no servidor.
No painel central, clique uma vez no conjunto aplicacional cujo executável de encerramento pretende verificar.
No painel Ações, clique em Definições Avançadas. É apresentada a janela Definições Avançadas.
Desloque para baixo para a secção Proteção Rápida Contra Falhas.
Localize a entrada Executável de Encerramento e verifique o caminho e o nome de ficheiro do lado direito. Certifique-se de que o caminho e o nome de ficheiro estão corretos.
Clique em OK.
Verificar a Lista de Controlo de Acesso do executável de encerramento
Abra uma janela de linha de comandos elevada. Clique em Iniciar, aponte para Todos os Programas, clique em Acessórios, clique com o botão direito do rato em Linha de Comandos e depois clique em Executar como administrador.
Escreva start explorer.
Utilizando o Windows Explorer, navegue até ao ficheiro executável de encerramento.
Clique com o botão direito do rato no ficheiro e selecione Propriedades. É apresentada a caixa de diálogo Propriedades do ficheiro executável.
Clique no separador Segurança.
Na janela Nomes de grupos ou utilizadores:, certifique-se de que aparece SISTEMA. Se não aparecer, clique em Editar para adicionar a conta de sistema.
Na janela de Permissões de SISTEMA, certifique-se de que a conta de sistema tem pelo menos permissões para Ler e executar relativamente ao executável de encerramento.
Certifique-se de que o programa pode ser executado independentemente
Teste a execução do programa executável separadamente de um evento de encerramento de conjunto aplicacional. Se for possível executar o processo independentemente do encerramento de um conjunto aplicacional, então este deverá ser corretamente executado quando o conjunto aplicacional for automaticamente desativado pelo WAS.
Target | Microsoft.Windows.InternetInformationServices.6.2.ApplicationPool |
Category | Alert |
Enabled | True |
Alert Generate | False |
Remotable | True |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.Server.IIS.6.2.WarningAndErrorEventProvider | Default |
Filter | ConditionDetection | Microsoft.Windows.InternetInformationServices.6.2.ApplicationPool.EventFilter | Default |
WA | WriteAction | Microsoft.Windows.Server.IIS.6.2.GenerateAlertAction.SuppressedByDescription | Default |
<Rule ID="Microsoft.Windows.InternetInformationServices.6.2.WAS.did.not.run.the.automatic.shutdown.executable.for.application.pool" Enabled="true" Target="Microsoft.Windows.InternetInformationServices.6.2.ApplicationPool" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.Windows.Server.IIS.6.2.WarningAndErrorEventProvider">
<LogName>System</LogName>
</DataSource>
</DataSources>
<ConditionDetection ID="Filter" TypeID="Microsoft.Windows.InternetInformationServices.6.2.ApplicationPool.EventFilter">
<Expression>
<And>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>MatchesRegularExpression</Operator>
<Pattern>^(5054|5091)$</Pattern>
</RegExExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-WAS</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</ConditionDetection>
<WriteActions>
<WriteAction ID="WA" TypeID="Microsoft.Windows.Server.IIS.6.2.GenerateAlertAction.SuppressedByDescription">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.InternetInformationServices.6.2.WAS.did.not.run.the.automatic.shutdown.executable.for.application.pool.AlertMessage"]$</AlertMessageId>
</WriteAction>
</WriteActions>
</Rule>