Asp.net 解决直接url复制粘贴问题的登录页

Asp.net 解决直接url复制粘贴问题的登录页,asp.net,Asp.net,我必须在asp.net中创建登录页 但当我在浏览器中复制并粘贴直接URL时,这种情况不会发生。 我怎样才能做到这一点 示例:如果我有project.aspx和login.aspx以及project.aspx,即使URL已粘贴到浏览器中,也不应在没有login.aspx的情况下访问它们。成功登录后,您可以设置会话变量。在每个页面加载中,您可以检查会话是否为空,如果为空,您可以重定向到登录页面。因此,如果用户直接输入URL,会话将为空,并且它将重定向到登录页面。如果您使用标准asp.net身份验证(

我必须在asp.net中创建登录页

但当我在浏览器中复制并粘贴直接URL时,这种情况不会发生。 我怎样才能做到这一点


示例:如果我有project.aspx和login.aspx以及project.aspx,即使URL已粘贴到浏览器中,也不应在没有login.aspx的情况下访问它们。

成功登录后,您可以设置会话变量。在每个页面加载中,您可以检查会话是否为空,如果为空,您可以重定向到登录页面。因此,如果用户直接输入URL,会话将为空,并且它将重定向到登录页面。如果您使用标准asp.net身份验证(例如表单),您可以在web.config中指定需要授权的路径或页面,如果您使用标准登录组件,登录和返回粘贴url的url重定向将自动工作


我建议使用标准的asp.net机制,甚至可以考虑创建一个自定义成员资格提供程序。

您能提供更多信息吗?像设置、代码片段等。现在我有了Login.aspx,成功登录后它会重定向到Project.aspx。但如果我写“www.mysite.com/project.aspx”,那么我也可以访问project.aspx页面,这是我必须避免的。那么我该如何实现呢?我正在使用sql数据库来存储用户名和PWD。使用源代码!“谷歌IT!!!”[link]我是ASP.net新手。我该怎么做?设置会话变量。并在每个页面加载时检查它。对于登录按钮,单击可添加会话[“登录”]=“登录”;每个页面加载都可以检查这个。如果(Session[“Login”]==null){Response.Redirect(“/Login.aspx”);}和注销按钮,您可以使用Session.advand()清除此会话;
if ((HttpContext.Current.Request.UrlReferrer == null))
{
    Response.Redirect("Default.aspx");
}