我有2个子域名:' secure'和'下载'属于同一域:" 10.0.50.18"。
on'下载'我使用jQuery设置了一个cookie:
$.cookie("width", w, {domain: "10.0.50.18"});
on' secure',我正在尝试读取这样的Cookie:
$width = $_COOKIE["width"];
但它没有用。
任何人都可以帮忙吗? 谢谢!
答案 0 :(得分:2)
除非您在创建Cookie时指定,否则Cookie不会跨子域工作。你需要做这样的事情:
$.cookie("width", w, {domain: ".mydomain.com"});
这将允许mydomain.com的所有子域共享cookie。
答案 1 :(得分:0)
很抱歉,您无法以您尝试的方式使用来自不同域的Cookie。 你可以在这里阅读一些有趣的解决方案 Cross-Domain Cookies
答案 2 :(得分:0)
您可以将Cookie设置为IP地址,您不能使用通配符。
domain .10.0.50.18 is not valid
domain 10.0.50.18 is valid
IP地址不像DNS域那样容易遵循组织边界。比Web服务器的IP地址少一个或一个的IP地址可能不一定位于同一组织中。出于安全原因,不允许在cookie的domain属性中使用任何形式的IP地址。这有效地消除了任何形式的IP地址的域属性的有用性。
来自http://www.ietf.org/rfc/rfc2109.txt
完全限定的主机名(FQHN)表示完全限定 主机的域名(FQDN)(即完全指定的域) 名称以.com或.uk)等顶级域名结尾,或者 主机的数字Internet协议(IP)地址。完全 合格的域名是首选; 使用数字IP地址 强烈劝阻 。