Suponho que você esteja perguntando sobre os Mapeamentos do gerenciador do IIS7.
Oculto no modo de exibição no Gerenciador do IIS há um atributo preCondition
para cada mapeamento de manipulador. Por exemplo, aqui está um trecho de applicationHost.config
para todos os diferentes manipuladores de página que uma página .aspx
pode ter (removi alguns atributos para manter as coisas concisas):
<add name="PageHandlerFactory-ISAPI-4.0_32bit" path="*.aspx"
preCondition="classicMode,runtimeVersionv4.0,bitness32" />
<add name="PageHandlerFactory-ISAPI-4.0_64bit" path="*.aspx"
preCondition="classicMode,runtimeVersionv4.0,bitness64" />
<add name="PageHandlerFactory-Integrated-4.0" path="*.aspx"
preCondition="integratedMode,runtimeVersionv4.0" />
<add name="PageHandlerFactory-Integrated" path="*.aspx"
preCondition="integratedMode" />
<add name="PageHandlerFactory-ISAPI-2.0" path="*.aspx"
preCondition="classicMode,runtimeVersionv2.0,bitness32" />
<add name="PageHandlerFactory-ISAPI-2.0-64" path="*.aspx"
preCondition="classicMode,runtimeVersionv2.0,bitness64" />
Quando uma solicitação .aspx
é passada pelo pipeline do IIS, somente o manipulador que corresponde ao preCondition
é usado.
O preConditions
geralmente mapeia para a configuração do pool de aplicativos em que o site ou aplicativo é executado.
Então, se eu tivesse um site em execução em um pool de aplicativos configurado como:
.NET Framework Version [managedRuntimeVersion] = v2.0 Enable 32-Bit Applications [enable32BitAppOnWin64] = True Managed Pipeline Mode [managedPipelineMode] = Classic
Se Default.aspx
foi solicitado, o manipulador escolhido para processar essa solicitação seria:
PageHandlerFactory-ISAPI-2.0
Há um ótimo artigo que explica preConditions
com muito mais detalhes aqui:
Esqueci de dizer que a ordem dos mapeamentos do manipulador também é uma consideração, especialmente para mapeamentos com e sem curinga. A ordem deles pode ser visualizada / alterada no Gerenciador do IIS abrindo o recurso Mapeamentos do Manipulador para um site e, em seguida, clicando no link Visualizar Lista Ordenada no painel Ações à direita. Nesta visão, você pode alterar a ordem de processamento dos manipuladores.