域名 - >子域 - 传递会话数据

时间:2010-06-10 13:03:04

标签: php session subdomain

你好,这里有点麻烦。 我有domain.co.uk设置会话。当我点击domain.co.uk上的链接转到sub.domain.co.uk时,会话未被阅读。

我已将session.cookie_domain更改为.domain.co.uk但仍然无效。还有什么需要改变吗?

此致 我。

5 个答案:

答案 0 :(得分:1)

你的htaccess文件中的

php_value session.cookie_domain ".domain.co.uk"

你完成了

答案 1 :(得分:0)

有关存储在Cookie中的会话ID的信息。如果由主域设置,则子域不能读取cookie。查看有关session_name&的信息。 setcookie和session_id()php函数。或者在其他地方存储会话ID(例如mysql数据库) P.S。:对不起我的英语。

答案 2 :(得分:0)

我同意GOsha,

我通过提交表单数据或在SQL中存储来完成所有会话切换。然后在新的域环境中重新创建会话。

如果有更简单的方法,我不能100%确定吗?

不确定是否有帮助。

沙恩

答案 3 :(得分:0)

会话数据存储在Cookie中,如果您在域google.com上,则只有域google.com可以访问Cookie会话数据,例如用户名或会话ID。

dev.google.com无法访问google.com的Cookie,这意味着登录google.com的用户在访问dev.google.com时将无法登录。除非有一些机制,例如将查询字符串中的会话ID传递给dev.google.com。

答案 4 :(得分:0)

这个简单的代码可以帮到你很多,试一试。它将100%工作。

<?php 
session_set_cookie_params(0, '/', '.domain.co.uk'); 
session_start(); 
?>