一个网站部署在几个服务器上,当用户在其中一个服务器登录后(生成一个SessionID),当转到另一个服务器的页面后却又生成另一个SessionID,从而需要重新登录。
怎样配置(或者程序)才能实现在一个服务器上生成的Seession多个服务器可以共用!多谢!
怎样配置(或者程序)才能实现在一个服务器上生成的Seession多个服务器可以共用!多谢!
解决方案 »
- 关于跳转的路径问题
- 需要安装sql server express吗?
- IIS6.0Kernel Caching和Gzip压缩数据
- 求:计算一个数,结果必须是整数且个位数为0且大于原来的结果
- 大家帮忙看看这样一个项目要收多少钱?
- 在脚本中如何获取页面上的控件信息??
- 为何dg_ItemCommand下的((TextBox)e.Item.Cells[1].Controls[0]).Text 不好使啊?
- 为什么在服务器上不能下载中文文件名的文件?
- vs2008 中, 控件不能正确呈现的问题
- ASP.NET中未将对象引用设置到对象的实例的错误
- gridview绑定列超级连接
- 根据RadioButtonList选择不同的item实现不同的功能,用ajax如何实现
1、authorization.aspx:
該頁面可能只有一個;作用是判斷是否合法用戶;2、authentication.aspx:
各服務器上都有;作用是為合法用戶session("xx")賦值;
<sessionState
mode="[Off|InProc|StateServer|SQLServer|Custom]" ……>默认为InProc,所以不会共享Session,而StateServer就可以满足你的需要;SQL Server方式也可以满足,但是性能上会差一些,不过如果有异构平台的时候,也许就是唯一选择了。不过你的网站应该没有这样的需要。
<sessionState
mode="StateServer"
cookieless="false"
timeout="240"
stateConnectionString="tcpip=10.164.222.122:42424"
stateNetworkTimeout="14400"
/>
同时在每个服务器加上
<machineKey
validationKey="78AE3850338BFADCE59D8DDF58C9E4518E7510149C46142D7AAD7F1AD49D95D4"
decryptionKey="5FC88DFC24EA123C"
validation="SHA1"
/> 这样可以在多台服务器上共用一个SessionID,从而可以共享Session。