为什么我在default.aspx的网站上被要求输入密码

本文关键字:输入 密码 网站 default aspx 为什么 | 更新日期: 2023-09-27 18:20:27

为什么当我在web配置中选择了如下所示的表单身份验证时,它会转到login.aspx以请求文件default.aspx,该文件位于根目录中,而不是~/account文件夹中。对于我需要检查的内容,任何建议都要感谢

<authentication mode="Forms">
    <forms loginUrl="~/Account/Login.aspx" name=".ASPXFORMSAUTH"></forms>
</authentication>

<location path="~/WebResource.axd">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>
<location path="~/Account">
    <system.web>
        <authorization>
            <deny users="*"/>
        </authorization>
    </system.web>
</location>
<location path="img">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>
<location path="~/ScriptResource.axd">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>
<location path="~/contactus.aspx">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>
<location path="Telerik.Web.UI.WebResource.axd">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>

为什么我在default.aspx的网站上被要求输入密码

要允许匿名用户访问Default.aspx是root用户,您应该尝试:

<location path="~/Default.aspx">
    <system.web>
        <authorization>
            <allow users="?"/>
        </authorization>
    </system.web>
</location>

您有一个明确允许人们查看contactus.aspx的规则,但没有与default.aspx匹配的规则。请尝试为该区域添加一个规则。

我假设你在某个地方有一个你没有展示过的拒绝所有规则?你可以总是授予对所有网站的访问权限,然后像你所做的那样明确拒绝对just/account的访问。

web.config的身份验证部分中有什么?

这已经有一段时间了,但我认为你必须明确授权访问我认为默认情况下被归类为锁定的东西?

因此,您需要根级别的授予权限。

如果您希望所有用户在不登录的情况下访问页面,请在web.config中添加以下块

<location path="~/Default.aspx">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>

它设置为允许匿名用户访问此页面