问题描述
1.先建立两个站点A与B,A的http://10.66.13.254/SessionLogin/Login.aspxB的http://10.66.13.254/SessionUser/User.aspx2.两个的web.config<sessionStatemode="StateServer"stateConnectionString="tcpip=127.0.0.1:42424"cookieless="false"timeout="20"/>或者两个都是<sessionStatemode="StateServer"stateConnectionString="tcpip=10.66.13.254:42424"cookieless="false"timeout="20"/>3.启动ASPState服务4.修改Session服务器注册表中的项HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesaspnet_stateParameters中的AllowRemoteConnection键的值为1,其中的Port值为42424;修改后需要重启ASP.NETStateService;在A站点设置了Session["UserName"]=ValueB站点的值还是为空Session["UserName"]==null?"thesessionisnull!":Session["UserName"].ToString();
解决方案
解决方案二:
谢谢楼主分享
解决方案三:
收藏。留着,分享
解决方案四:
各位大哥,我还想看你们的回复呢?mode="StateServer"设置应该成功了的,因为站点A登录后,重启IIS后,再在A的另一个页面查看,Session[UserName]的值还在,但B站点Session[UserName]不知什么原因就是显示不了A站点的Session[UserName]
解决方案五:
没有人会吗?
解决方案六:
http://www.cnblogs.com/ryhan/p/3748976.html这里有解决办法,但是我觉得微软不给提供解决方案一定有他的考虑。这种勉强的解决办法不是好办法。
解决方案七:
如果可以,最好放弃Session集合。这样你也就不用什么状态服务器了。asp.net网页会仍然提交SessionID,这在cookie中不会因为web服务群而改变。你可以将SessionID对应的业务数据放到数据库中,使用Cache提高读取效率。取消Session集合。