
Nosso aplicativo usa o módulo UrlRewrite do IIS para redirecionar temporariamente solicitações durante atualizações para um site de manutenção. Vimos alguns casos em que, mesmo que a regra de redirecionamento tenha sido removida, o servidor continua a redirecionar todas as solicitações de acordo com a regra removida. Não parece haver nenhum padrão nisso e só ocorreu uma ou duas vezes.
Tomamos as seguintes medidas para tentar determinar a causa desse comportamento.
- Verificado que a regra original era um redirecionamento temporário 307
- Solicitou o aplicativo de máquinas que nunca o solicitaram antes
- Usou um navegador diferente
- Adicionada e removida uma regra fictícia do console de gerenciamento do IIS
- Verifiquei o cache do kernel http usando
netsh http show cachestate
- Modifiquei o arquivo applicationHost.config manualmente (a regra ainda não estava no arquivo, apenas adicionamos um espaço supérfluo)
No passado, quando isso acontecia, conseguimos reiniciar o IIS e isso resolve o problema, mas isso nem sempre é uma opção e realmente queremos descobrir qual é a causa raiz.
Como ou por que o UrlRewrite armazenaria a resposta em cache e não responderia às alterações de configuração?
Responder1
Não tenho representante suficiente para adicionar um comentário, mas como você está removendo a regra? Você está usando <remove name=""/>
ou excluindo a regra? Se você estiver apenas excluindo, talvez tente usar o elemento remove.