我所有的 cookie 在子域上都工作得很好,但如果子域中有“_”,那么 cookie 根本不会被读取,也根本不会正确。以下是我的测试结果,它将自我解释
justlife.demo.com *** works fine ***
just-life.demo.com *** works fine ***
just-.demo.com *** works fine ***
just_.demo.com *** DONT works fine ***
just_life.demo.com *** DONT works fine ***
不起作用的域,它们的 cookie 显示完全为空,您无法从该子域写入或读取。
此问题仅在 IE 中出现。
firefox 和 chrome 工作正常,他们没有这个错误。
有什么解决办法吗?这些子域是用户名。
IE 在子域名中存在下划线问题。查看问题here https://stackoverflow.com/questions/794243/internet-explorer-ignores-cookies-on-some-domains-cannot-read-or-set-cookies.
从那里:
MSIE 7,在带有下划线的域上,默默地删除该主机的所有 cookie,并拒绝接受新的 cookie。
唯一的解决方案是使用符合 RFC 的域(我已将所有“_”替换为“-”并设置 RewriteRule,以便将流量重定向到兼容的域)。
恐怕您将不得不删除下划线域,或者解决您的 cookie 问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)