如何将 PHP 会话数据从一个 Apache 虚拟主机传递到另一台?我当前正在运行 Apache 2.2.17 和 PHP 5.3.3,并且我已经设置了一台主机来管理单点登录应用程序,我需要将其传递给运行单独应用程序的另外两台虚拟主机。这是我打算进一步开发的东西,但目前传递会话数据将是最简单的。
目前,此代码在 SSO 子域 auth.domain.com 中创建第一个会话,然后将用户传递回应用程序界面 app.domain.com(已修剪):
$user = new User;
$user->set_user_session();
Header("Location: $redirectURL");
exit;
服务器完全由私人管理,因此多用户安全无需担心。但是,如果有人发现除此之外的任何安全问题,请告诉我。如果您知道更好的方法,请分享,我将进一步研究。我很感激你的帮助。
据我所知,PHP 会话(默认情况下)不支持虚拟主机:您需要将会话 ID 作为重定向的一部分传递,然后将其设置在其他虚拟主机中。所以像这样:
$sessionid = session_id();
Header("Location: $redirectURL?session=$sessionid");
exit;
然后在重定向的目标中:
session_id($_GET['session']);
session_start();
尝试一下并让我知道它是如何工作的。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)