2011-04-08 38 views
1
<authentication mode="Forms"> 

     <forms name="SignIn" loginUrl="~/login.aspx" timeout="9999999" slidingExpiration="true" defaultUrl="~/Default.aspx"/> 

    </authentication> 

這將自動註銷我的登錄頁面,在1分鐘或兩分鐘....如何在web.config中自動終止會話?

我想,直到我登出我的會議將不會自動終止....

如何做到這一點在web.config?

回答

0

這是一個非常好的和簡單的技術,重新加載圖像不斷保持會話生活。如果圖像強制它再次加載它,則結尾的隨機數。如果圖像沒有觸發會話,那麼您可以使用返回相同圖像的處理程序來更改它。

<img id="keepAliveIMG" width="1" height="1" src="/img/ui/spacer.gif?" alt="" /> 

<script language="javascript" type="text/javascript"> 
    var myImg = document.getElementById("keepAliveIMG"); 

    if (myImg){ 
     window.setInterval(function(){ 
       myImg.src = myImg.src.replace(/\?.*$/, '?' + Math.random()); 
      }, 6000); 
    } 
</script> 
0

我認爲你應該使用cookies。我更喜歡使用這種方法:

只有在用戶點擊登錄按鈕:

FormsAuthentication.SetAuthCookie(userName, True) 

當持久性cookie設置爲True,則創建一個cookie,以便用戶將在即使他閉上他的會話保持登錄。

我的web.config是這樣的:

<forms loginUrl="~/Account/Login.aspx" timeout="2880" /> 

,一切工作正常。在上面的示例中,用戶將保持登錄2880分鐘。

看一看這些鏈接:

http://msdn.microsoft.com/en-us/library/ff647070.aspx

http://msdn.microsoft.com/en-us/library/1d3t3c61.aspx