O módulo tem uma pré-condição inválida

Microsoft.Windows.InternetInformationServices.6.2.Module.has.an.invalid.precondition (Rule)

Knowledge Base article:

Resumo

O IIS (Serviços de Informações da Internet) versão 8 permite que os desenvolvedores configurem de maneira fácil os módulos de códigos nativos e gerenciados que processam as solicitações feitas ao servidor Web. Para que os processos de trabalho carreguem os módulos, eles precisam estar configurados corretamente. A configuração correta dos módulos exige que eles tenham um nome exclusivo e um tipo ou caminho válido. Os módulos gerenciados podem especificar se devem ser invocados somente para solicitações de aplicativos ASP.NET ou manipuladores gerenciados. Quando especificada, essa configuração pode otimizar o desempenho.

Resoluções

Corrija as pré-condições de um módulo

As entradas do módulo têm um atributo preCondition opcional que pode conter condições para o carregamento do módulo. Por exemplo, a preCondition pode especificar que o IIS carregue o módulo somente para os pools de aplicativos que são executados no modo integrado, somente para os pools de aplicativos que são executados no modo ISAPI ou somente para os pools de aplicativos que usam uma versão específica do .NET Framework. A última opção possibilita o uso de versões distintas do módulo de mecanismo gerenciado para os pools de aplicativos que usam diferentes versões do tempo de execução de CLR.

Veja um exemplo da seção globalModules do arquivo ApplicationHost.config de uma entrada de módulo que tem um atributo preCondition:

<globalModules>

     <add name="ManagedEngine"

           image="%Windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll"

           preCondition="integratedMode,runtimeVersionv2.0,bitness32"

      />

</globalModules>

Antes de carregar cada módulo, o servidor avalia a pré-condição se houver uma presente na configuração. Se alguma pré-condição de carregamento retornar como falsa, o módulo não é carregado.

Para resolver esse problema:

Faça backup do arquivo ApplicationHost.config

Para fazer backup do arquivo ApplicationHost.config:

Um diretório com o nome de backup especificado será criado no diretório %Windir%\system32\inetsrv\backup. Se você não especificar um nome, Appcmd.exe criará um nome de diretório automaticamente usando a data e a hora atuais.

Encontre a entrada do módulo no arquivo ApplicationHost.config

Para encontrar a entrada do módulo no arquivo ApplicationHost.config:

Para obter mais informações sobre a seção globalModules, confira IIS 8: adicionar um Elemento para executar globalModules (Esquema de Configurações do IIS).

Element properties:

TargetMicrosoft.Windows.InternetInformationServices.6.2.WebServer
CategoryAlert
EnabledTrue
Event_ID2296
Event SourceMicrosoft-Windows-IIS-W3SVC-WP
Alert GenerateFalse
RemotableTrue
Event LogApplication

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
WA WriteAction Microsoft.Windows.Server.IIS.6.2.GenerateAlertAction.SuppressedByDescription Default

Source Code:

<Rule ID="Microsoft.Windows.InternetInformationServices.6.2.Module.has.an.invalid.precondition" Enabled="true" Target="Microsoft.Windows.InternetInformationServices.6.2.WebServer" ConfirmDelivery="false" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>Alert</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-IIS-W3SVC-WP</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>2296</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WA" TypeID="Microsoft.Windows.Server.IIS.6.2.GenerateAlertAction.SuppressedByDescription">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.InternetInformationServices.6.2.Module.has.an.invalid.precondition.AlertMessage"]$</AlertMessageId>
</WriteAction>
</WriteActions>
</Rule>