首页 新闻 搜索 专区 学院

session 共享问题

0
悬赏园豆:50 [已解决问题] 解决于 2015-10-30 11:22

如图所示:同一个网站有多个项目,怎么实现Session共享问题.

_jie的主页 _jie | 初学一级 | 园豆:116
提问于:2015-10-15 21:39
< >
分享
最佳答案
0

想达到你的目的从理论上要解决如下问题:

1、域名一致——保证浏览器回传给服务器的SESSION_ID一样。

2、网站设置——保证网站使用了远程统一服务器的,@何德海 的方法就可以。

3、远程统一状态服务器要设置为允许远程接入,同时让防火墙准入:

  引用CSDN上一部分内容:修改Session服务器注册表中的项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services \aspnet_state\Parameters中的AllowRemoteConnection 键的值为1,其中的Port值为 42424 ;修改后需要重启ASP.NET State Service;)

 

然后重启所有相关服务,试一下。

收获园豆:25
ensleep | 小虾三级 |园豆:1403 | 2015-10-20 14:37
其他回答(6)
0

Session存储模式有多种的,可以选择StateServer和SQLServer存储,当然也可以自己实现。这里说下StateServer的方式,web.config配置

<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="20" />

然后服务器上开启服务 “ASP.NET 本地服务

收获园豆:10
webaspx | 园豆:1987 (小虾三级) | 2015-10-16 09:07

你说的这种方式我已试过, 行不通,在另外一个项目中获取不到session 值

支持(0) 反对(0) _jie | 园豆:116 (初学一级) | 2015-10-16 09:14

@_jie: 哦?行不通?奇了怪了,我们好几个网站都这样弄的,都用的好好的。

支持(0) 反对(0) webaspx | 园豆:1987 (小虾三级) | 2015-10-16 09:37

@webaspx: 你是怎么弄的。 我是在IIS 根目录下添加了<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="20" /> ,其他的子程序项目的web.config 也添加了同样的sessionState 配置. 

支持(0) 反对(0) _jie | 园豆:116 (初学一级) | 2015-10-16 11:14
0

楼上说的是可以的.session共享方法多了.自己百度.这个是说不清楚的

吴瑞祥 | 园豆:28846 (高人七级) | 2015-10-16 09:25
0

我最直观的方法就是引用dll。。。。。。。。

或者你试试

http://download.csdn.net/detail/tl2008168/2131373试试这个呢。

收获园豆:5
如此低调的男人 | 园豆:840 (小虾三级) | 2015-10-16 09:29
0
焰尾迭 | 园豆:33 (初学一级) | 2015-10-16 11:12
0

memcache

诗经 | 园豆:202 (菜鸟二级) | 2015-10-16 15:09
0

使用session state server的话,还需要配置machineKey。

<machineKey decryptionKey="FD69B2EB9A11E3063518F1932E314E4AA1577BF0B824F369" validationKey="5F32295C31223A362286DD5777916FCD0FD2A8EF882783FD3E29AB1FCDFE931F8FA45A8E468B7A40269E50A748778CBB8DB2262D44A86BBCEA96DCA46CBC05C3" validation="SHA1" decryption="Auto"/>
 
<sessionState cookieless="false" timeout="50" mode="StateServer" stateConnectionString="tcpip=127.0.0.1:42424"/>
 
各个项目的machinekey要一致。
收获园豆:10
何德海 | 园豆:481 (菜鸟二级) | 2015-10-17 20:45
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册