AJAX& PHP:通过代理加载外部域并使用会话cookie?

时间:2010-07-21 04:09:44

标签: php ajax load

我想知道我做错了什么或者我错了吗?

我正在使用jquery load()加载子域的一部分。就在我开始加载方法之前,我正在使用php将密码保存到$ _SESSION。我用jquery load()加载的子域的一部分需要这个密码信息。

这是否算作同一个会话,因为我无法在加载的子域部分中检索$ _SESSION信息?

或者这不起作用,因为我实际上正在加载DIFFERENT网站的一部分,所以会话是另一个?

任何想法?

1 个答案:

答案 0 :(得分:0)

$_SESSION与名为PHPSESSID的Cookie相关联,默认情况下,该Cookie仅适用于您使用它的完全域名。 a.example.com无法访问来自b.example.com的Cookie,因此会话也无法跨越。

但是,有一种方法可以将PHPSESSID Cookie设置为在整个域中可用:session_set_cookie_params()允许您将相关设置应用于该PHPSESSID Cookie。通过将域设置为.example.com(前面的点必须在那里!),您可以将Cookie提供给example.com和所有子域。

session_set_cookie_params(0, '/', '.example.com');