web.config - 如何防止所有继承

时间:2011-06-09 16:30:33

标签: asp.net inheritance web-config

我们在/.

中的服务器上有一个应用程序作为根应用程序

我们在/ lite / virtual root中设置了另一个应用程序作为自己的应用程序。

两者都使用EnterpriseLibrary,但很明显/ lite / version有不同的设置。

问题是它想要从“父”应用程序的web.config继承各种东西。

请注意,在某些服务器上,很可能只存在/ lite /,所以我们不能依赖于能够继承,因为父web.config可能并不总是存在。

我找到了使用<location><remove>的参考资料,但我们没有取得多大成功,因为必须完成许多不同的事情。

是否有一种简单的方法可以使虚拟根简单地从“父”web.config中自治?

2 个答案:

答案 0 :(得分:0)

尝试将rootitInChildApplications属性设置为根应用程序的web.config:

<location path="." inheritInChildApplications="false">
    <system.web>
     ...
    </system.web>
</location>

答案 1 :(得分:0)

编辑applicationHost.config文件(%WINDIR%\ System32 \ inetsrv \ Config)并将属性enableConfigurationOverride =“false”添加到子应用程序池设置中:

<add name="ChildAppPool" autoStart="true" managedRuntimeVersion="v4.0" managedPipelineMode="Integrated" enableConfigurationOverride="false">
    <processModel identityType="NetworkService" />
</add>