编辑web.config时会发生什么?

时间:2008-10-07 13:08:50

标签: asp.net sharepoint iis-6

我需要在实时的Sharepoint环境中编辑web.config文件,但我不确定如果我这样做会发生什么(我想输出自定义错误)。

这会导致IIS6工作进程回收吗?

活跃用户会因此失去会话状态吗?

或者我可以安全地编辑文件吗?

6 个答案:

答案 0 :(得分:71)

应用程序池将重新启动,会话状态将丢失。想象一下,每个ASP.NET应用程序(在IIS中定义)都是桌面上的程序。保存web.config将执行与关闭程序并重新打开它类似的操作。

答案 1 :(得分:30)

  1. 是。它将被回收。
  2. 是。他们将失去会议。
  3. 是。您可以安全地编辑该文件。我建议你阅读这篇MSDN文章:Working with web.config Files in Windows SharePoint Services

答案 2 :(得分:8)

此外,如果会话状态配置为进程外(数据库或服务),则回收应用程序池将不会丢失任何会话状态。这对于Sharepoint和对于vanilla ASP.Net来说都是如此。

答案 3 :(得分:1)

正如一些人已经提到的:IIS中站点的应用程序池将重新启动(这通常需要几秒钟)。结果,下一页请求将变慢(因为不会再缓存任何内容)。用户的会话状态也将丢失;但是在默认情况下不使用WSS会话状态,在MOSS中它由InfoPath表单服务使用。因此,您可能没有与失去会话状态相关的重大问题。

另一方面;克服这些问题:通常要做的是创建一个SharePoint解决方案(WSP),它部署并启动一个计时器作业,以便从代码中更改web.config(使用对象模型的SPWebConfigModification类)。好处是你可以安排执行更改,这样你的用户就不会注意到它。

答案 4 :(得分:1)

编辑web.config时,它将重新启动该Web应用程序的AppDomain(NOT AppPool)并清除所有占用的资源和内存。因此,在该应用投票下运行的其他Web应用程序将不会受到影响。还将清除会话(进程内)和内存缓存。

答案 5 :(得分:0)

如果您对编辑Web配置有任何想法,请查看SPWebConfigModification类。