1、session共享:
// session共享方法1
ini_set("session.cookie_domain", ".二级域名.com");
// session共享方法2
// session_id('cookie session_id');
2、使用redis记录session并共享,应用场景为分布式服务器部署
ini_set("session.save_handler", "redis");
ini_set("session.save_path", "tcp://127.0.0.1:6379");
// session共享方法1,使用场景为在2级域名相同的情况下
ini_set("session.cookie_domain", ".二级域名.com");
// session共享方法2,强制設置session_id
// session_id('cookie session_id');
session_start();
// 添加session記錄
$_SESSION['test'] = array('num' => rand(1,99));
// 設置session寫入并關閉,防止session阻塞導致redis非正常读写
session_write_close();
// 连接redis
$redis = new redis();
$redis->connect('127.0.0.1', 6379);
// 检查session_id
echo 'session_id:' . session_id() . '<br/>';
// redis存入的session(redis用session_id作为key,以string的形式存储)
echo 'redis_session:' . $redis->get('PHPREDIS_SESSION:' . session_id()) . '<br/>';
// php获取session值
echo 'php_session:' . json_encode($_SESSION) . '<br/>';