为什么URL重定向之后SESSION就不能用了?
http://www.baidu.com/index.php 此时写个SESSION['key'] = 200;
重定向到 http://www.sian.com , http://www.sian.com再重定向到
http://www.baidu.com/index.php ,发现SESSION['key'] 就找不到了??
请问为什么啊?还有COOKIE 存在这样情况吗?
为什么URL重定向之后SESSION就不能用了?
http://www.baidu.com/index.php 此时写个SESSION['key'] = 200;
重定向到 http://www.sian.com , http://www.sian.com再重定向到
http://www.baidu.com/index.php ,发现SESSION['key'] 就找不到了??
请问为什么啊?还有COOKIE 存在这样情况吗?
5 回答1.2k 阅读✓ 已解决
2 回答3.2k 阅读✓ 已解决
2 回答1.7k 阅读✓ 已解决
3 回答944 阅读✓ 已解决
1 回答1.3k 阅读✓ 已解决
2 回答1.6k 阅读
1 回答1.1k 阅读
你是用服务器端直接redirect的么?若是,很有可能会出现这种问题。因为session要与cookie对应
client-->A(set session and redirect to B)-->B-->A
第一次访问A时set的Cookie有可能还没保存到用户浏览器,就收到302重定向走了,所以再返回A时就没有cookie去对应session了,当然也有可能是从B重定向到A时,因为跨域,请求头里没有A域下的cookie,所以拿不到session。所以这种重定向,一般是单独做一个重定向页面(js或其他方式)做跳转,而不是直接服务器端redirect,参考微博,空间等网站都有类似的专门重定向页面