2016-03-01 72 views
0

我想在两个域中共享一个cookie,因为我的移动网站在子域上运行。如何在2个子域上共享cookie?

生产服务器:

www.server.com 
m.server.com 

开发服务器:

rabbit.server 
rabbit.m.server 

我的PHP代码设置cookie看起来是这样的:

if ($settings['development'] == true) // intranet does not work with subdomains :-(
    setcookie($cookiename,$sessid, $expires,'/','',0); 
else // production 
    setcookie($cookiename,$sessid, $expires,'/', $subdomain.'.'.$domain['name'],0); 

我怎么能跨越分享这个cookie这两个域名是为了让客户在这两个网站上进行访问?

回答

0

你不必明确定义子域:

setcookie('cookiename','cookievalue',time()+(3600*24),'/'); 

将饼干根,这将是可访问的每一个地方。

因此,基本上'/'定义它可以在所有文件夹中访问。

0

那么,有两种方法可以做到这一点。

您可以在整个域上设置cookie,这将允许您从任何子域访问它,或者如果您只希望允许某些子域名,那么您将不得不创建两个cookie,每个一个。

你不能有两个不同的子域一个统一的Cookie只,您可以在整个域启用它,或者你可以有多个cookie,每个子域。

代码明智的,你必须改变

setcookie($cookiename,$sessid, $expires,'/', $subdomain.'.'.$domain['name'],0); 

setcookie($cookiename,$sessid, $expires,'/','.'.$domain['name'],0);