【发布时间】:2013-08-27 21:45:29
【问题描述】:
这是我在基于 PHP 的 webapp 中启动会话的代码
session_set_cookie_params(24*60*60, "/", ".exdomain.com");
session_start();
我想要的是在所有子域之间保持相同的会话说:
www.exdomain.com
ajax.exdomain.com
这里是子域
ajax.exdomain.com
用于服务用户的ajax请求现在发生了什么,用户通过www.exdomain.com登录时 一个新的 PHPSESSID="91252ec9310ae1c80f44c7e885cf7dfe" 从萤火虫创建 PHPSESSID cookie 设置如下:
PHPSESSID=91252ec9310ae1c80f44c7e885cf7dfe | .exdomain.com | 41乙| / | 2013 年 8 月 29 日上午 03:02:09
现在,当通过 ajax 子域(即 ajax.exdomain.com)发出请求时,正在为此请求创建一个新会话,实际上为每个 ajax 请求创建一个新的 PHPSESSID。 如何防止ajax请求新会话的形成。
【问题讨论】:
-
您是否为两个子域配置了相同的
session_set_cookie_params()?换句话说,ajax.exdomain.com是否知道也使用.exdomain.com作为会话 cookie 的域? -
两者都使用相同的文件/功能进行登录验证/会话管理。
-
检查this question它可能对你有帮助。
标签: php session session-cookies