例如,
我可以通过添加:
在web.config文件中指定会话超时<system.web>
<sessionState timeout="10"/>
</system.web>
或者我可以通过转到“应用程序配置选项”来配置IIS中的会话超时。
如果它们都配置为不同的值,哪一个胜出?更具体地说,所有其他设置是否遵循相同的模式?
编辑:我不认为他们是同一个人。 web.config获胜。当我在IIS中更改值时,没有任何内容被写回web.config。
web.config中的设置与IIS中的设置之间存在明确的脱节。我没有阅读任何关于哪一个覆盖另一个的好文档。我所观察到的是web.config获胜。我认为其他人可能会更深入地了解这种差异。
答案 0 :(得分:12)
web.config中的那个'获胜'。
编辑: 基本上,当您从UI编辑设置时,更改将写回web.config
答案 1 :(得分:5)
他们是同一个人。
答案 2 :(得分:3)
IIS管理器中配置的设置将作为<location path="your-site/subfolder">
元素添加到服务器的根applicationHost.config文件中(位于C:\ Windows \ System32 \ inetsrv \ config中)。由于web.config中的设置始终覆盖applicationHost.config中的设置,因此如果相同的设置在IIS管理器中有一个值,而在web.config中有另一个值,则web.config值将赢得&#39;。< / p>
答案 3 :(得分:0)
他们是一样的。顺便说一句,你可以比输入这个问题更快地尝试一下! :)
答案 4 :(得分:0)
会话超时: web.config将覆盖IIS配置工具的会话超时设置 仅适用于ASP.NET应用程序......
对于asp,情况恰恰相反
答案 5 :(得分:0)
回答得太迟了,但可能会为将来来到这里的人们解决问题。
此article解释了IIS
和ASP.net
应用程序之间的继承。
提示3的报价:了解您的Web.config如何继承IIS配置设置
当然,服务器管理员不一定要允许任何 服务器上的应用程序通过Web.config修改设置,因此 是ApplicationHost.config中的可配置策略,其状态是 单个应用程序是否可以覆盖设置。
此post解释了两个ApplicationHost.config
属性的用法:overrideModeDefault
和allowDefinition
。这两个属性都设置是否和谁可以覆盖IIS
内部的ApplicationHost.config
设置。
基于这两个,如果我们不知道web.config
项,那么我们不能毫无疑问地说IIS
会覆盖ApplicationHost.config
。
引用来自:Introduction to ApplicationHost.config
默认情况下,大多数IIS节被锁定,使用 该部分中的overrideModeDefault =“ Deny”。