C# C登录/注册时的ASP.Net身份验证

C# C登录/注册时的ASP.Net身份验证,c#,asp.net,authentication,login,returnurl,C#,Asp.net,Authentication,Login,Returnurl,我正在努力让我的登录/注册系统工作。 我有一个register.aspx页面,用户在其中注册,所有这些数据都输入到数据库中,然后我有一个Login.aspx,用户应该在其中输入用户名和密码 但我甚至无法进入这一阶段,因为身份验证似乎一直在出错 <authentication mode="Forms"> <forms name="401kApp" loginUrl="/login.aspx" defaultUrl="Home.aspx" /

我正在努力让我的登录/注册系统工作。 我有一个register.aspx页面,用户在其中注册,所有这些数据都输入到数据库中,然后我有一个Login.aspx,用户应该在其中输入用户名和密码

但我甚至无法进入这一阶段,因为身份验证似乎一直在出错

<authentication mode="Forms">
  <forms name="401kApp" loginUrl="/login.aspx"
         defaultUrl="Home.aspx"
         />
</authentication>
我想让我的身份验证意识到没有人登录,因为他们不应该登录,除非他们自己在登录页面上登录。但出于某种原因,它似乎一直在重定向我,我经常收到HTTP404:找不到资源

它重定向到:

我不知道为什么它会这样做,因为它甚至不会加载登录或注册页面,让我登录时,身份验证是打开的

这是我的登录代码:

<asp:LoginStatus id="LoginStatus1" runat="server"></asp:LoginStatus>
<asp:LoginView ID="LoginView1" runat="server">
<AnonymousTemplate>
Please log in.
</AnonymousTemplate>
<LoggedInTemplate>
Thanks for logging in 
</LoggedInTemplate>
</asp:LoginView>              
有人能帮我吗

提前感谢

您的应用程序根目录中是否有Login.aspx页面

如果您查看web.config,您应该会看到一个与您似乎正在使用的成员资格提供程序相关的部分,在该部分中,您可以指定登录页面(如果它被称为与login.aspx不同的名称)。您的应用程序根目录中是否有login.aspx页面


如果您检查web.config,您应该会看到一个与您似乎正在使用的成员资格提供程序相关的部分,如果它被称为不同于login.aspx,您可以在其中指定登录页面。您需要在web.config中添加一个“location”部分,以便匿名访问“register.aspx”。否则,当用户尝试访问它时,他们将被重定向到登录页面以获得身份验证:

<location path="/account/register.aspx">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>

更多信息:

您需要在web.config中添加一个“位置”部分,以便匿名访问“register.aspx”。否则,当用户尝试访问它时,他们将被重定向到登录页面以获得身份验证:

<location path="/account/register.aspx">
    <system.web>
        <authorization>
            <allow users="*"/>
        </authorization>
    </system.web>
</location>

更多信息:

我已经试过了,当我点击注册或登录时,它仍然试图重定向我:说HTTP 404。您正在查找的资源或其依赖项可能已被删除、名称已更改或暂时不可用。请检查以下URL并确保其拼写正确。您的注册页面似乎位于名为account的子目录中。。。位置路径属性需要表示您想要的路径。。。。也许/Account/Register.aspx,我会更新我的样本非常感谢,是的,这解决了重定向问题,但是现在它说我已登录,即使我没有通过Login.aspx页面登录。我已经清除了缓存并关闭了会话,但会话仍然显示我已登录。有什么想法吗?不知道你说的我登录是什么意思。你不是,是吗?如果你试图访问你的主页,你会受到挑战,对吗?在顶部部分,它说:[注销]感谢登录这一定是因为感谢登录我已经尝试过了,当我点击注册或登录时,它仍然试图重定向我:说HTTP 404。您正在查找的资源或其依赖项可能已被删除、名称已更改或暂时不可用。请检查以下URL并确保其拼写正确。您的注册页面似乎位于名为account的子目录中。。。位置路径属性需要表示您想要的路径。。。。也许/Account/Register.aspx,我会更新我的样本非常感谢,是的,这解决了重定向问题,但是现在它说我已登录,即使我没有通过Login.aspx页面登录。我已经清除了缓存并关闭了会话,但会话仍然显示我已登录。有什么想法吗?不知道你说的我登录是什么意思。你不是,是吗?如果你试图访问你的主页,你会受到挑战,对吗?顶部的部分写着:[注销]感谢你登录这一定是因为感谢你登录我现在正在努力,因为它永久性地说我登录了。当我在任何时候都没有使用登录屏幕实际登录时。因此,重定向问题已经解决,但登录问题还没有解决。我现在正在挣扎,因为它永久性地说我已登录。当我在任何时候都没有使用登录屏幕实际登录时。因此,重定向问题已经解决,但登录问题尚未解决。