防止用户通过地址栏直接访问主页

     前几天有同学问到一个问题,大概如下:

     存在Login.aspx与Default.aspx页面,由Login.aspx输入正确的用户名与密码访问到Default.aspx,当在Default.aspx正确退出(释放Session),再直接通过浏览器访问,问题便出现了,似乎Session并没有失效,页面仍可以访问。

     查阅了一下相关的资料,原来是页面被缓存的问题,经过测试,得到的解决方案如下:

     1.重新调用原页面的时候在给页面传一个参数:    href="****.aspx?random()"

     2.HTML方法
        <HEAD>
        <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
        <META HTTP-EQUIV="Cache-Control" CONTENT="no-cache">
        <META HTTP-EQUIV="Expires" CONTENT="0">
        </HEAD>

     3.Response.Buffer = true;
        Response.ExpiresAbsolute = System.DateTime.Now.AddSeconds(-1);
        Response.Expires = 0;
        Response.CacheControl = "no-cache";
        Response.AddHeader("Pragma", "No-Cache");

     如果大家再遇到类似的问题,可以考虑使用以上的三个解决方案。

 

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值