是否有可能更改在IIS7的URL重写,而无需重新启动应用程序?

我们目前正在使用ISAPI重写。 但是,我们正在转向使用IIS7的服务器。 如果我们正在使用IIS7的URL重写工具(如果我记得正确地更改了web.config,从而导致应用程序重新启动),那么有没有一种方法可以在导致应用程序重新启动的情况下执行?

是的,问题不在于URL Rewrite本身,而在于新的IIS7.x分布式configuration,其中一些设置被委托给站点的web.config。 对web.config的任何更改都会导致appdomain的回收。 这是我在AppDomain上做的一个最近的video 。

您的select是:

  • 在全球一级创build规则。 这不会导致appdomain回收
  • 在applicationHost.config中手动创build规则并将其包装在标记中。
  • 编辑您的服务器的委派configuration设置,以使URL重写不被委派。 然后,IISpipe理器将自动将其放置在applicationHost.config中。 要小心,因为web.config文件中的现有规则会导致网站失败,因此您需要先将它们迁移回applicationHost.config。