日期:2014-05-18  浏览次数:20481 次

在二级域名重写的情况下如何保存和传递Session
目前遇到这样一个情况,做了泛二级域名,所有二级域名都跳转到主域名http://www.***.com/  
用户板块是http://user.***.com/
客户板块是http://biz.***.com
这样就出现一个问题   当我在http://user.***.com/***   登陆用户   并保存Session
但是在http://biz.***.com/***和http://www.***.com/**   的所有相关页面都获取不到该session。
也就是说,只有http://user.***.com/***的页面才能获取到。
不知道大家有没有遇到过?又是怎么解决的?是不是我用户状态管理没有设置好,还是本来就是这样的呢。

------解决方案--------------------
Session 只在同一服务器有效,2个域名Session肯定不同用
------解决方案--------------------
session不能跨域名的 换个传值方法吧
------解决方案--------------------
比如a页传值给b页
a页放上一个textbox id= "txt " 再放个button postbackurl= "b页的路径 "
在b页面接收request.form[ "txt "] 就可以获得a页面的textbox的值了。
------解决方案--------------------
用Session可以 URL重写 是伪二级域名 换句话说 就是假二级域名

就是做的泛解析 *.xxx.com 通过程序 重写URL MM.xxx.com
------解决方案--------------------
up
------解决方案--------------------
跨域的session不好弄,换webservice或post方式的接口页面来做吧
------解决方案--------------------
cookies可以
------解决方案--------------------
Session也是可以跨子域名跨机器共享的。

首先跨机器要用StateServer或者SqlServer,让Session保存在一个中立进程上。如果要跨子域名,就需要更复杂的机制以便让双方承认同一个SessionID。
------解决方案--------------------
Session不能的,使用Form验证,然后设置Cookie.Domain就可以

直接用COOKIE也是可以的