我们目前正在使用 ISAPI 重写。但是,我们正在转向使用 IIS7 的服务器。如果我们要使用 IIS7 的 URL 重写工具(如果我没记错的话,它会更改 web.config,从而导致应用程序重新启动),有没有办法没有导致应用程序重新启动?
答案1
是的,问题不在于 URL 重写本身,而在于新的 IIS7.x 分布式配置,其中某些设置被委托给站点的 web.config。对 web.config 的任何更改都会导致 appdomain 回收。以下是最近的视频我在 AppDomains 上做过。
您的选择是:
- 在全局级别创建规则。这不会导致 appdomain 回收
- 在 applicationHost.config 中手动创建规则并将其包装在标签中。
- 编辑服务器的委派配置设置,以便不委派 URL 重写。然后 IIS 管理器会自动将其放置在 applicationHost.config 中。但要非常小心,因为 web.config 文件中的现有规则会导致站点失败,因此您需要先将它们迁移回 applicationHost.config。