2011-03-23 45 views
0

我有一个域默认的顶级网站.Net 2应用程序。下面有很多不同的应用程序虚拟目录。我无法获得.Net 4虚拟目录。我可以停止Asp.Net 4应用程序继承Web.Config中的.Net 2父应用程序的configSections吗?

我已阅读:

.net 4.0 inheriting .net 3.5 web.config?

和我有类似的问题,因为:Disable web.config inheritance?尚未解决 - 答案已经给出的是使用inheritInChildApplications这个问题,不能用绕过configSections标签。

我设法阻止域的所有.Net 2子应用程序从继承顶级 web.config设置,但对于.Net 4应用程序,我似乎无法。

<location path="." inheritInChildApplications="false"> 

缠绕在父的.Net 2应用的system.web节,并和予有

<clear/> 

在.NET 4虚拟目录的应用程序的Web.config每部。

有没有其他解决方案?也许父母的.Net 2应用程序可以放在虚拟目录中,并且顶级站点请求可以是URL ReWritten,而不需要用户的知识?

+0

我认为使用URL重写模块IIS7中我可以将请求重新写入域,并通过.Net应用程序将其服务器与子域中的所有其他应用程序共同托管在该域的子目录中。这是在Asp.Net/IIS7中使用多个应用程序托管一个域的正常方式吗? – Kenny 2011-03-23 16:10:40

+0

执行重定向的顶级.net 2应用程序仍然会有一个web.config,其中存在重写规则。 :\这仍然会导致无关紧要的问题? – Kenny 2011-03-23 17:00:27

回答

1

不,你不能阻止它继承,(InheritInChildApplications = False修复不包括足够的顶级Web.Config来解决这个问题),但你可以删除顶级的.Net 2应用程序和重定向请求。

使用URL重写模块将请求从本地顶级Web应用程序路由到IIS中Web站点下的虚拟目录中的另一个“Web应用程序”,从顶级Web.Config中移除几乎所有内容。

没有顶级的.Net 2应用程序对于虚拟目录中的.Net 4应用程序没有任何意义可以继承。

IIS安装前:
网站 - .NET 2应用程序的 “根”
|
| - .NET 2应用程序 “一”
| - .NET 4的应用 “两节”(不工作!)

IIS设置后:
网站 - 重写请求.net 2虚拟目录中的应用
|
| - .NET 2应用程序 “一”
| - .NET 4的应用 “两节”
| - .NET 2应用程序的 “根”

相关问题