我正在为我的网络应用程序使用ASP.NET表单身份验证。我有一个文件夹,我想授予其未经身份验证的用户访问权限。我使用的是IIS 7,应用程序池处于集成模式。作为测试,我在ScriptsHandlers文件夹中创建了hello.txt。当我尝试使用IIS浏览它时,尽管有location元素,我仍会被重定向到登录页面。此外,当我运行我的应用程序时,在查询存储在该文件夹中的asmx Web服务时,我收到401 Unauthorized错误。 这是我的web.config的片段:
<location path="ScriptsHandlers">
<system.web>
<authorization>
<allow users="?"/>
</authorization>
</system.web>
</location>
<location allowOverride="true">
<system.web>
<authentication mode="Forms">
<forms loginUrl="Views/Login.aspx" name=".ASPXFORMSAUTH" cookieless="UseUri" slidingExpiration="true" />
</authentication>
<authorization>
<deny users="?" />
<allow users="*"/>
</authorization>
</system.web>
</location>
答案 0 :(得分:0)
允许访问ScriptsHandlers文件夹中的所有内容
ScriptsHandlers Or /ScriptsHandler depending on where you keep this web.config
<location path="ScriptsHandlers">
<system.web>
<authorization>
<allow users="*"/>
</authorization>
</system.web>
</location>