Asp.net 在应用程序级别之外使用注册为allowDefinition='MachineToApplication'的节是错误的

Asp.net 在应用程序级别之外使用注册为allowDefinition='MachineToApplication'的节是错误的,asp.net,iis,iis-6,Asp.net,Iis,Iis 6,网络上有很多关于这个错误的参考文献,但都重复了相同的2条建议,这两条建议都不适用于我的案例 这是我的设想 我有一个服务器2003和IIS 6。默认网站有4个虚拟目录,它们都配置为单独的应用程序。有些是Web服务,有些是普通的ASP.NET站点。其中3个工作正常,一个不正常-从外部看,当我登录到服务器并浏览本地主机时,我不会收到此错误 所有应用程序共享相同的应用程序池,并且它们都有自己的web.configs。我仔细研究了这些属性,没有发现可以解释错误的差异。安全设置是相同的。我检查了MMC和文件

网络上有很多关于这个错误的参考文献,但都重复了相同的2条建议,这两条建议都不适用于我的案例

这是我的设想

我有一个服务器2003和IIS 6。默认网站有4个虚拟目录,它们都配置为单独的应用程序。有些是Web服务,有些是普通的ASP.NET站点。其中3个工作正常,一个不正常-从外部看,当我登录到服务器并浏览本地主机时,我不会收到此错误

所有应用程序共享相同的应用程序池,并且它们都有自己的web.configs。我仔细研究了这些属性,没有发现可以解释错误的差异。安全设置是相同的。我检查了MMC和文件系统中文件和文件夹的权限。应用程序池帐户网络服务和匿名web用户都具有所需的访问权限,并且它们在所有应用程序中都是相同的。 这两个应用程序都启用了匿名访问并启用了集成安全性

同样,当我以匿名用户的身份从防火墙外点击页面时,我只会出现上述错误。当我在本地登录时,该页面可以正常使用。 这让我认为问题与安全性/模拟有关

无法工作的应用程序是使用VS 2008和.Net 3.5构建和部署的。它在web.config中有其他较旧的应用程序所没有的东西。不过,我试图逐渐从web.config中删除设置,直到该网站不再工作为止,但没有任何效果


发生了什么事?

由于经常发生这种情况,我忽略了一个小细节——防火墙规则将我的请求转发到不同端口上的不同网站。外部请求实际上击中了此服务器上的另一个站点。此其他站点没有为虚拟目录配置应用程序。一旦我关闭了另一个站点,这一点就显而易见了。

应用程序.Net 2.0是否正常工作?有集群还是只有这台服务器?只有一台服务器,是的,它们是2.0。
Configuration Error 
Description: An error occurred during the processing of a configuration file
required to service this request. Please review the specific error details 
below and modify your configuration file appropriately. 

Parser Error Message: It is an error to use a section registered as
allowDefinition='MachineToApplication' beyond application level.  
This error can be caused by a virtual directory not being configured 
as an application in IIS.

Source Error: 

Line 36:             ASP.NET to identify an incoming user. 
Line 37:         -->
Line 38:        <authentication mode="Windows"/>
Line 39:        <!--
Line 40:             The <customErrors> section enables configuration