如何使用表单身份验证保留默认页面?

nol*_*mit 5 asp.net forms-authentication

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

现在,每当您请求该网站时,您总是会看到登录页面。我不确定我是否使用了正确的方法?

有什么想法吗?

更新:像这样的流程:

  1. 导航至 www.[site].com
  2. 得到Default.aspx
  3. 单击LoginStatus配置有图像的控件
  4. 重定向至Login.aspx

考虑到 web.config 看起来像:

<authentication mode="Forms">
  <forms loginUrl="Default.aspx" timeout="20" protection="None" cookieless="UseCookies"/>
</authentication>
Run Code Online (Sandbox Code Playgroud)

控制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>
Run Code Online (Sandbox Code Playgroud)

cit*_*nas 1

如何将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>
Run Code Online (Sandbox Code Playgroud)