asp.net – 如何使用Forms身份验证保留默认页面?

我有一个使用表单身份验证的网站,我的困境是我需要用户在首次使用“www.[site] .com”导航到网站时点击Default.aspx页面.然后,他们可以选择单击登录链接以重定向到登录页面并从那里登录该站点.

现在,无论何时您请求该站点,您始终都会获得登录页面.我不确定我是否正在使用正确的方法?

有什么想法吗?

更新:像这样的流程:

>导航到www.[site] .com
>获取Default.aspx
>单击使用图像配置的LoginStatus控件
>重定向到Login.aspx

考虑到web.config看起来像:

<authentication mode="Forms">
  <forms loginUrl="Default.aspx" timeout="20" protection="None" cookieless="UseCookies"/>
</authentication>

LoginStatus控件是这样的:

 <div class="loginStat">
            <asp:LoginStatus ID="HeadLoginStatus" runat="server" LogoutAction="Redirect" LoginImageUrl="~/images/Key-icon.png"
                LogoutImageUrl="~/images/LogOut32.png" LogoutPageUrl="~/" ToolTip="Log in/out" />
        </div>

最佳答案 如何将DefaultUrl属性设置为“default.aspx”并从表单身份验证标记中排除login.aspx?

根据您的评论进行修改:
显然你没有排除login.aspx.将它添加到根目录的web.config中的适当位置(如果login.aspx和default.aspx放在根目录中)

<location path="login.aspx"> 
 <system.web>
  <authorization> 
    <allow users="*" />
  </authorization>
  </system.web>
</location>
点赞