你能告诉我当我们在 IIS 服务器上编辑 Web.config(在运行时)时到底发生了什么吗?

Bas*_*mme 11 iis web.config

你能告诉我当我们在 IIS 服务器上编辑 Web.config(在运行时)时到底发生了什么。

依赖于 web.config 的应用程序是否自动重新启动?如果是,是否可以取消自动重启(或重新加载 web.config)?

Sco*_*MVP 10

每当您“触摸”web.config 时,ASP.NET AppDomain 都会重新启动。可以关闭文件夹的文件更改通知 (FCN),但如果您能提供帮助,这通常不是最好的选择。如果您确实将其关闭,则仅意味着您需要手动回收应用程序池以使更改生效。

在 IIS7 之前,只有 ASP.NET 更改会导致 AppDomain 回收,但是对于 IIS7 和 web.config 中的许多设置,这是一个更常见的问题。即更改 IIS 7 管理器中的默认文档将导致 AppDomain 现在回收。

理想情况下,您只需要降低更改率,或者有时将更改应用于 applicationHost.config(不会导致 AppDomain 回收)而不是 web.config。


Whi*_*isk 4

当您更改它时,使用 web.config 的应用程序将重新启动,这里有更多信息:

http://msdn.microsoft.com/en-us/library/ms178473.aspx

我不知道有什么方法可以防止这种情况发生(而且我不确定你为什么想要这样做 - 也许你可以提供一些你想要实现的目标的更多细节)。