none
如何实现当用户没有登录的时候,就算输入直接URL。但是,还是回到login.aspx首页。 RRS feed

  • 问题

  • 我是想实现这样的功能.

    login.aspx页面和index.aspx页面.就算用户在URL那里输入http://127.0.0.1/index.aspx .只要还没有登录就自动回到login.aspx页面

    这个功能怎么实现呢?web.config这个文件里面怎么写?用cookies还是?

    麻烦各位老师解答一下.

    2011年10月29日 5:35

答案

  • 我是想实现这样的功能.

    login.aspx页面和index.aspx页面.就算用户在URL那里输入http://127.0.0.1/index.aspx .只要还没有登录就自动回到login.aspx页面

    这个功能怎么实现呢?web.config这个文件里面怎么写?用cookies还是?

    麻烦各位老师解答一下.


    用Shadow And Happy Code的方法是可以的。

    不过ASP.NET2.0+开始就已经内部实现Authentication和Authorization方法,建议你在web.config中做如下配置:

    <system.web>
    <authentication mode= "Forms ">
    <forms name= "userID " loginUrl= "login.aspx " protection= "None " timeout= "60 " />
    </authentication> 
    ………………
    </system.web>

    黑色部分表示:没有Cookie(未登录情况下)自动跳转到login.aspx强制登录

    然后在“登录按钮里边”——

    FormsAuthentication.RedirectFromLoginPage ("用户名",true);  //true:允许跨浏览器

    注销的时候:

    FormsAuthentication.SignOut();

    Response.Redirect("login.aspx");

    应该会自动跳转到登录页面

    具体请参考:http://www.cnblogs.com/AndersLiu/archive/2008/01/01/forms-authentication-part-1.html


    如果你有其它意见或私下交流,请直接发送maledong_work@foxmail.com;或者讨论(Talk)
    If you do not have QQ, please open the page and download it and click the image to talk or leave message for me.
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处
    • 已标记为答案 QAL1988 2011年10月30日 7:22
    2011年10月30日 3:44

全部回复

  • 一般登录机制,都是用Session最有弹性

    您可以在Login.aspx页,用户登录成功后把用户的帐号(account)和密码(password)存放在Session里

    例如:Session["account"] = account; Session["password"]=password;

    然后在index.aspx页的Page_Load事件

    去判断

    if(Session["account"]==null || Session["password"]==null)//null表示使用者未登录或画面闲置逾时

    {

       Response.Redirect("Login.aspx");//回到login.aspx页面

    }


    Shadowと愉快なコード達

    2011年10月29日 15:01
  • 我是想实现这样的功能.

    login.aspx页面和index.aspx页面.就算用户在URL那里输入http://127.0.0.1/index.aspx .只要还没有登录就自动回到login.aspx页面

    这个功能怎么实现呢?web.config这个文件里面怎么写?用cookies还是?

    麻烦各位老师解答一下.


    用Shadow And Happy Code的方法是可以的。

    不过ASP.NET2.0+开始就已经内部实现Authentication和Authorization方法,建议你在web.config中做如下配置:

    <system.web>
    <authentication mode= "Forms ">
    <forms name= "userID " loginUrl= "login.aspx " protection= "None " timeout= "60 " />
    </authentication> 
    ………………
    </system.web>

    黑色部分表示:没有Cookie(未登录情况下)自动跳转到login.aspx强制登录

    然后在“登录按钮里边”——

    FormsAuthentication.RedirectFromLoginPage ("用户名",true);  //true:允许跨浏览器

    注销的时候:

    FormsAuthentication.SignOut();

    Response.Redirect("login.aspx");

    应该会自动跳转到登录页面

    具体请参考:http://www.cnblogs.com/AndersLiu/archive/2008/01/01/forms-authentication-part-1.html


    如果你有其它意见或私下交流,请直接发送maledong_work@foxmail.com;或者讨论(Talk)
    If you do not have QQ, please open the page and download it and click the image to talk or leave message for me.
    下载MSDN桌面工具(Vista,Win7)
    我的博客园
    慈善点击,点击此处
    • 已标记为答案 QAL1988 2011年10月30日 7:22
    2011年10月30日 3:44