为什么URL重定向之后SESSION就不能用了?
Jun 06, 2016 pm 08:36 PM
为什么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依然有效。

热门文章

热门文章

热门文章标签

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

适用于 Ubuntu 和 Debian 的 PHP 8.4 安装和升级指南

如何设置 Visual Studio Code (VS Code) 进行 PHP 开发
