[英]how to access cookies on subdomain
我想访问子域上的cookie,
cookie在主域上运行良好,但无法访问子域上的cookie,我创建了两个文件testing_1.php和testing_2.php,这些cookie是通过testing_1.php设置的
$domain = '.localhost';
session_set_cookie_params(0, '/', $domain);
session_start();
$_SESSION['name'] = 'Jogesh';
setcookie("f_name", "jogesh", 0, "/", "$domain");
if( isset( $_COOKIE["f_name"] ) )
echo "Set Cookie on 1: " . $_COOKIE["f_name"];
else
var_dump(setcookie("f_name", "jogesh", 0, "/", "$domain"));
在上面的代码中,我也尝试访问会话,但只是获取了会话ID,如果可能的话,我想在子域上访问$_SESSION['name']
现在testing_2.php在这里
session_start();
if( isset( $_SESSION['name'] ) )
echo "Session Name: " . $_SESSION['name'];
else
echo "Session not set!";
if( isset( $_COOKIE["f_name"] ) )
echo "Cookie Name: " . $_COOKIE["f_name"];
else
echo "Cookie not set!";
这两个文件在localhost
上都运行良好,但是当我尝试从demo.localhost
访问文件demo.localhost
,无法访问任何内容,请让我知道我做错了什么,
如果要在www.example.com
上创建它们,则无法从cdn.example.com
读取它们。 您必须在example.com
上创建它们。 同样,您无法使用JavaScript和Visa-verse读取PHP创建的Cookie。 它还取决于浏览器。 tsk.tr
存在问题。 您必须查看浏览器列表http://mxr.mozilla.org/mozilla-central/source/netwerk/dns/effective_tld_names.dat?raw=1也许我愿意,因为浏览器将localhost
和subdomain.localhost
处理为完全不同的域名。 在实际环境中尝试使用该代码或使用hosts文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.