从不同端口切换时保持会话

时间:2015-01-11 13:36:07

标签: php tornado

我的网站上有一个会员区域,在我的默认端口80上,有一个用户应用程序运行在我的网站的端口8080上,名为UserPort,当用户转到UserPort时,一个新的空(内部没有用户名) )会话已创建。反正我有没有从端口80到8080端口保持相同的会话?

编辑:好的,所以我的问题被引用到以下答案= Same Session ID on Same IP Address but Different Ports但是代码没有得到很好的解释,我是否将第一段代码放入端口110我的会员区域页面并将第二段放入我的UserPort页面?

1 个答案:

答案 0 :(得分:0)

由于存在两个不同的服务器,因此您无法轻松(如开箱即用)共享会话。但是,您可以从您的apache应用程序向您的龙卷风应用程序发出请求,以准备"准备"用户的会话。然后,当用户被重定向到UserPort时,她应该得到一些东西来识别自己。因此:Are HTTP cookies port specific?使用Cookie不可靠,因此网址中的一次性令牌可能会这样做。

将它放入一个非常简化的pseude代码中:

// apache 
$token = createRandomString();
call($tornadoAppUrl, $userData, $token);
$link = createUserPortLink($tornadoAppUrl, $token);
echo "<a href='$link'>go to UserPort</a>"

//tornado UserPort
$token = 
$userData = getUserSession($token);
... act accordingly

希望它清楚。