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?


I don't have enough rep to add a comment, but how are you removing the rule? Are you using <remove name=""/> or are you deleting the rule instead? If you're just deleting it, perhaps try using the remove element instead.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.