SESSION跨二级域
前一段时间在工作中遇到了需要session跨域的问题。
众所周知,session在默认情况下是将session_id存储在cookie里面。
服务器在读取用户session时,会根据此session_id来进行检索取出服务器中存放的session文件。
但是,cookie是存在作用域的。
默认情况下,如果我们在二级域下面种cookie则域就是二级域。
因此,当我们在另一个二级域下便取不到session_id了。
那如何解决此问题呢?
为此,我们先搭建两个环境来做一个实验。
y1.cookie.com设置session
y2.cookie.com来取y1域中的session
y1.php
//首先来检查一下当前的设置状态
var_dump(session_get_cookie_params());
session_start();
$_SESSION['y1'] = 'this from y1';
print_r($_SESSION);
y2.php
var_dump(session_get_cookie_params());
session_start();
print_r($_SESSION);