Why would the IIS UrlRewrite module continue redirecting requests after the rule is removed?
- by Jon Norton
Our application uses the IIS UrlRewrite module to temporarily redirect requests during upgrades to a maintenance site. We have seen a few instances where even though the redirect rule has been removed, the server continues to redirect all requests according to the removed rule. There does not seem to be any pattern with this, and has only occurred once or twice.
We have taken the following steps to try and determine the cause of this behavior.
Verified that the original rule was a 307 temporary redirect
Requested the application from machines that had never requested it before
Used a different browser
Added and removed a dummy rule from the IIS management console
Checked the http kernel cache using netsh http show cachestate
Modified the applicationHost.config file by hand (the rule was not still in the file, we just added a superfluous space)
In the past when this has happened, we have been able to restart IIS and it solves the problem but that is not always an option and we really want to figure out what the root cause is.
How or why would UrlRewrite be caching the response and not responding to configuration changes?