php 根据session重定向,为什么URL重定向之后SESSION就不能用了?

为什么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 存在这样情况吗?

你是用服务器端直接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,参考微博,空间等网站都有类似的专门重定向页面

程序还是游览器?游览器的话,跟服务的设置和游览器的设置有关系的。

可以在每次redirect的时候,预设session,这样可以保证每次重定向后,session依然有效。

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值