网站修改webconfig时,iis自动重启,造成session丢失。怎么能实现修改配置而不重启iis呢?
NET Framework2.0中System.Configuration允许对于webconfig的每个配置区放到一个外部配置文件中,再用configSource的特性来指定各个配置区的外部文件。当使用 configSource 属性时,必须将整个节移动到单独文件。修改单独配置时,不会造成iis重启,为了安全,常常把该外部文件放到config目录下。以常用的AppSettings为例,配置如下:
<appSettings configSource="config\appSettings.config">
</appSettings>
注意,只能包含一次configSource,configSouce中的文件路径只能为相对物理路径,也就是只能为反斜杠"\",不能用斜杠"/"。
appSettings.config 内容如下:
<?xml version="1.0"?>
<appSettings>
<!--输出调试信息开关 1:输出,0:否-->
<add key="IsOutputDubInfo" value="1"/>
<!--属性页大小-->
<add key="PageSize" value="1"/>
</appSettings>
keyword:webconfig,iis自动重启,configSource

本文介绍了一种通过将webconfig的部分配置分离到独立文件中来避免IIS因配置更改而重启的方法,确保了Session状态的持续性。具体操作是利用configSource属性将特定配置项如AppSettings指向外部文件。
516

被折叠的 条评论
为什么被折叠?



