Caching 如何调用同一文件夹中的一个asmx而不是另一个?

Caching 如何调用同一文件夹中的一个asmx而不是另一个?,caching,iis,asmx,unauthorized,Caching,Iis,Asmx,Unauthorized,我有两个web服务,都是老式的asmx。在具有windows身份验证的MVC web应用程序中,两者位于相同的子文件夹中,该子文件夹具有匿名身份验证 当我浏览其中一个页面时,我得到了预期的结果,我可以调用服务,但当我浏览另一个页面时,我得到“HTTP错误401.2-未经授权,由于身份验证头无效,您无权查看此页面。” 然后我重命名了第二个,一切正常。即使我删除了第二个asmx文件,我也会得到未授权,而不是“未找到资源” 我在注册表和文件系统中搜索了文件名的引用,但什么也没找到。我删除了ASP.NE

我有两个web服务,都是老式的asmx。在具有windows身份验证的MVC web应用程序中,两者位于相同的子文件夹中,该子文件夹具有匿名身份验证

当我浏览其中一个页面时,我得到了预期的结果,我可以调用服务,但当我浏览另一个页面时,我得到“HTTP错误401.2-未经授权,由于身份验证头无效,您无权查看此页面。”

然后我重命名了第二个,一切正常。即使我删除了第二个asmx文件,我也会得到未授权,而不是“未找到资源”

我在注册表和文件系统中搜索了文件名的引用,但什么也没找到。我删除了ASP.NET临时文件,但没有帮助


有什么解决问题的建议吗?

这不容易找到,但在inetpub\temp\appPools\中有一个名为应用程序池的文件夹。在该文件夹中有IIS配置部分的“副本”

在某些情况下,我们一定是意外地标记了实际的asmx文件,而不是更改AUTENTATION时的文件夹。因此,它包含了一个专门针对该文件的配置部分。比如:

<location path="Web/Services/ServiceName.asmx">
    <system.webServer>
        <security>
            <authentication>
                <anonymousAuthentication enabled="false" />
            </authentication>
        </security>
    </system.webServer>
</location>

当我们删除该部分时,它再次起作用:)