ASP.NET站点内部的虚拟目录

时间:2010-06-22 18:53:28

标签: asp.net iis-6 web-config

我目前正在网站上推出新版本的网站。我想保留旧站点(为了只读访问的目的),并且已被指示将其放在站点所在目录内的子文件夹中。 e.g。

www.example.com需要移至www.example.com/old,新网站需要移至www.example.com

不幸的是,当我试图捎带每个都有自己的网络配置的网站时,我得到了经典的ASP.NET错误。

  

在应用程序级别之外使用注册为allowDefinition ='MachineToApplication'的部分是错误的。

我如何能够完全脱离新网站并通过它访问它。 www.example.com/old没有ASP.NET试图浏览我的目录并找到主要网站web.config?

谢谢!

4 个答案:

答案 0 :(得分:2)

为网站提供自己的AppPool应该可以。

您可以通过创建AppPool然后在IIS中的虚拟目录上将应用程序池设置为属性中的新应用程序来完成此操作。

答案 1 :(得分:0)

您可以在虚拟目录中包含的站点中尝试以下设置:

<location inheritInChildApplications="false">

Rick Strahl也有同样的问题,并描述了他在blog上的经历。

我自己没有尝试过,但发现其他博客articles与IIS6成功使用它。

答案 2 :(得分:0)

确保虚拟目录是一个应用程序,而不仅仅是一个虚拟目录。

答案 3 :(得分:0)

我已尝试在网站上创建新的应用池。那是行不通的 - 同样的错误。我还在web.config中添加了inheritChildApplications属性指令。那也行不通。我能够实现我所需要的唯一方法是在一个全新的文件夹中添加一个新的子域名,并在我的www.example.com/old页面中将其重定向到old.example.com。

这不是我想要做的,但它解决了这个问题。