我需要跨服务器传输用户会话.即.如果用户登录server1并且用户存在于server2中,那么我必须将用户会话详细信息传输到server2.为此,我使用了以下技术
从server1,将用户重定向到http://server2/auth_from_server1.php?sessionid=12345
在server2上(在内部,在auth_from_server1.php的PHP代码中),使用sessionid 12345向http://server1/secret/check_session_id.php发出请求.
在server1上,在check_session_id.php的实现中,验证ID并返回要传递的OK,FAILURE和会话相关数据,例如用户名,…
在server2上,当调用以OK返回时,存储传输的会话数据,并为用户提供此服务器的cookie和会话.
但是当回调函数调用auth_from_server1.php时,session id中的值为null.我试着将sessionid检查为
if(isset($_SESSION['sessionId']))
echo 'true';
else
echo 'false';
但$_SESSION [‘sessionId’]为空.在登录页面中,我将会话ID的值设置为
$_SESSION['sessionId'] = session_id();
提前致谢….
解决方法:
将会话数据存储在共享目录中会不会更容易?
或者,您可以在数据库中使用store it.