session跨域共享

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了session跨域共享相关的知识,希望对你有一定的参考价值。

www.maxomnis.com的index.php文件内容

<?php
session_start();
setcookie("user", "alex proter", time()+3600,‘/home‘,‘maxomnis.com‘);
setcookie("age", "1000000000", time()+3600,‘/‘,‘maxomnis.com‘);

$session_id = session_id();

setcookie("PHPSESSID", $session_id, time()+3600,‘/‘,‘maxomnis.com‘);

$_SESSION[‘home‘] = ‘xiantao‘;

var_dump($_SESSION);

?>

<html>
<body>
<a href="http://blog.maxomnis.com">blog</a>
</body>
</html>

blog.maxomnis.com的index.php

<?php
session_start();                            

/*

从www跳转到blog的index.php的时候不会重新生成session_id,因为根据session的原理,如果cookie带session_id的时候是不会重新生成的,因为上面的setcookie("PHPSESSID", $session_id, time()+3600,‘/‘,‘maxomnis.com‘);,在跳转的时候已经在cookie赋值了sessionid,所以在blog页面就不会重新生成了,还有session_id的命名,因为php.ini设置里面session.name = PHPSESSID ,session的名字为

PHPSESSID ,如果将这里的setcookie("PHPSESSID222", $session_id, time()+3600,‘/‘,‘maxomnis.com‘);,,那么在blog的index.php页面,重新获取session_id的时候,就需要通过

$session_id = $_COOKIE[‘PHPSESSID222‘];  //获取sessionid

session_id($session_id );          //设置当前的session_id;

*/
echo session_id();

echo "........................";
var_dump($_SESSION);
setcookie("name", "jack", time()+3600,‘/‘,‘maxomnis.com‘);


var_dump($_COOKIE);

?>

<html>
<body>
<a href="http://www.maxomnis.com">www</a>
</body>
</html>

以上是关于session跨域共享的主要内容,如果未能解决你的问题,请参考以下文章

session跨域共享

PHP解决HTTP和HTTPS跨域共享session的方法及代码实例

cookie跨域session共享

cookie跨域session共享

[转]session 跨域共享方案

Redis实战和核心原理详解使用Spring Session和Redis解决分布式Session跨域共享问题