2010-11-28 45 views
1

我们正在开发一个创建更多Web应用程序的Web应用程序。具有多个web.config文件的ASP.NET 3.5应用程序(IIS 7)

每个Web应用程序都必须获取URL重写规则(URL REWRITE MODULE 2.0)。

据我所知,没有办法添加这样的规则没有修改web.config文件(我是吗?)。

所以我的计划是使用多个web.config部分文件。一个主要的.config文件和每个应用程序的大量.config文件(每个文件都将包含它的Web应用程序url重写规则)。

这种方式听起来有点凌乱,但我想不出别的,建议将受到欢迎。

那么是否有可能为根应用程序使用非常多的web.config文件?

在此先感谢,Gal。

回答

0

每个应用程序都必须有一个完整的web.config,而不是局部的,exept如果你有网4

诀窍是使用大量的去在另一个里面的web.config删除命令删除不能用于此的父母设置。

例如,如果在主根上有一个你没有赢得在其他树上使用的模块,你可以在所有其他的web.config上使用remove命令将其删除。特别是在一个Bin上而不在其他目录bin上的模块。

<httpModules> 
    <remove name="TheHttoModuleNotNeedHere" /> 
    <remove name="AnonymousIdentification" /> 

    ... add here your other modules for that directory... 
</httpModules> 

remove命令几乎可以用于config上的所有会话。

你可以做到这一点,我已经做到了,但它做了很多工作来找到所有冲突/不必要的配置并将其删除。

对于其他一些会话还有清除命令。例如在角色管理器上,您可以清除全部并添加新的。

<roleManager enabled="true" ...> 
    <providers> 
    <clear /> 
    <add name="MyName" ... type="System.Web.Security.SqlRoleProvider" /> 
    </providers> 

希望这个帮助作为提示,使其工作。

1

这下面的标签将做的伎俩。 这个标签的缺失是我使用两个web.config文件为我的网站中运行的两个不同应用程序时出现问题的主要原因。

**<location path="." inheritInChildApplications="false">** 
    <system.web> 
    <!-- ... --> 
    </system.web> 
**</location>** 
相关问题