主  题:  form认证在SignOut后通过ie"后退"仍可看到受保护页面 
http://expert.csdn.net/Expert/topic/2784/2784071.xml?temp=.1779901

解决方案 »

  1.   

    http://expert.csdn.net/Expert/topic/2861/2861929.xml?temp=.3603022
      

  2.   

    <%
      Response.Expires = 0;
      Response.AddHeader("pragma","no-cache");
      Response.AddHeader("cache-control","private");
      Response.CacheControl = "no-cache";
    %>
      

  3.   

    去掉页面的缓存
    Response.Cache.SetCacheability(HttpCacheability.NoCache);
      

  4.   

    我调用了楼上的方法。但是还是出现了回退。我认为是signout的方法没有产生作用。
      

  5.   

    <script>
    function KeyDown(){ //屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键
    //alert("ASCII代码是:"+event.keyCode);
      if ((window.event.altKey)&&
          ((window.event.keyCode==37)||   //屏蔽 Alt+ 方向键 ←
           (window.event.keyCode==39))){  //屏蔽 Alt+ 方向键 →
         alert("不准你使用ALT+方向键前进或后退网页!");
         event.returnValue=false;
         }
      if ((event.keyCode==8)  ||                 //屏蔽退格删除键
          (event.keyCode==116)||                 //屏蔽 F5 刷新键
          (event.keyCode==112)||                 //屏蔽 F1 刷新键
          (event.ctrlKey && event.keyCode==82)){ //Ctrl + R
         event.keyCode=0;
         event.returnValue=false;
         }
      if ((event.ctrlKey)&&(event.keyCode==78))   //屏蔽 Ctrl+n
         event.returnValue=false;
      if ((event.shiftKey)&&(event.keyCode==121)) //屏蔽 shift+F10
         event.returnValue=false;
      if (window.event.srcElement.tagName == "A" && window.event.shiftKey) 
          window.event.returnValue = false;  //屏蔽 shift 加鼠标左键新开一网页
      if ((window.event.altKey)&&(window.event.keyCode==115)){ //屏蔽Alt+F4
          window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px");
          return false;}
    }
    function Showhelp(){
    alert("Wrong!");
    return false;
    }
    </script>
     
    Top 
      

  6.   

    谢谢 einsteincao(至尊宝) 。不过你能把form验证的原理跟我讲讲吗?
    我不想用客户端脚本的方法来实现。
      

  7.   

    einsteincao(至尊宝)的方法似乎不保险
    我在安全设定中取消JavaScript脚本
    一退就退回去了