假设我本机的域名为:local.app.com,远程服务器的域名为server.app.com。我现在在server.app.com上登录之后(用户信息记录在session里面),直接在IE里输local.app.com进行访问,竟然发现session还在。我的web.config中sessionstate设置为:
<sessionState 
mode="InProc" 
stateConnectionString="tcpip=127.0.0.1:42424" 
sqlConnectionString="data source=127.0.0.1;user id=sa;password=" cookieless="false" timeout="20"/>

解决方案 »

  1.   

    Session存在于:服务器
    Session的Scope:Application,即建立的应用程序级。
    所以,你不可能在本机获取服务器Session,问题原因不在这里。
      

  2.   

    我本机的域名为:local.app.com,远程服务器的域名为server.app.com。
    Session 本身也是 cookie 实现的,而 cookie 存在相同的domain内有效的情况(本机的域名为:local.app.com,远程服务器的域名为server.app.com,其实是在同一个domain 内
    ),这样一来,在本机获取服务器Session,也是有可能的.
      

  3.   

    to 孟子:
    写session值:
    string UserID = "abcde"
    HttpContext.Current.Session["UserID"]=UserID;读session值:
    string userID = (string) HttpContext.Current.Session["UserID"];to lemong(風之影):
    能否讲详细一些吗?谢谢!