关闭浏览器时,用户在IE中被注销

12
我正在运行一个 Drupal 7 站点,注意到在 IE9 上有一个问题,当浏览器窗口关闭时用户会被登出。我们启用了“记住我”模块,并且 cookie 的过期时间设置为不过期。在 Chrome 或其他任何浏览器上都没有问题,你可以关闭浏览器,再次打开后用户仍然保持登录状态。我在使用相同的浏览器和计算机运行其他 D7 网站时没有看到这个问题。主机是 Blackmesh。 settings.php 中有 $cookie_domain = '.mydomain.com';,我考虑将其更改为$cookie_domain = 'www.mydomain.com';,因为该网站始终重定向到 www,这对我来说是有道理的,并得到了我和我的系统管理员朋友的认可。 我想到的一个潜在解决方案是在settings.php中设置 cookie 域:$cookie_domain = 'www.mydomain.com'; 我注意到网站上有些 cookie 是从 www.my domain 提供的,而有些则来自 .mydomain 我找到了一些似乎有类似问题的讨论帖子。 http://forums.modx.com/thread/76947/ie-login-issue-with-www-vs-non-www-address https://www.drupal.org/node/280623

你是否检查了你的“Internet选项”,看看“退出时删除浏览历史记录”是否被勾选? - Sampson
这个问题仅存在于这个网站上,而不是其他的D7网站,所以问题出在网站上,而不是浏览器上的任何东西。访问这个网站的用户报告了问题,这只是这个网站的特殊情况,并不是其他D7网站的问题。在这台电脑上使用IE9时,其他网站没有出现这个问题。 - Alex Borsody
settings.php 文件中有 $cookie_domain = '.mydomain.com'; 我正在考虑将其更改为 $cookie_domain = 'www.mydomain.com'; 因为该网站总是重定向到 www,这对我来说很有意义,并且也是我和我的系统管理员朋友所同意的。 - Alex Borsody
试一下这个,请在这里告诉我们它对您是否有效。 - Sampson
谢谢您的建议,我现在将Cookie设置为23天。 - Alex Borsody
显示剩余2条评论
1个回答

3
因为在根域上设置的cookie应该在任何“子域”上正常工作,所以将cookie域设置为.mydomain.com而不是www.mydomain.com不应该有任何问题,但尝试更改是很简单的,这样做也无妨。
根据IE中的cookie隐私设置,如果未发送正确的P3P头,则可能会导致该站点的cookie未保存。对于测试,我相当确定可以使用p3p:CP =“CAO PSA OUR”(因此在.htaccess中放置Header set P3P'CP =“CAO PSA OUR”')。如果这是问题所在,我不知道您的情况需要什么正确的P3P,但是我曾经看到它对另一个“仅IE阻止cookie”的问题起作用。如果这不起作用,您可能需要进行一些研究。
如果这是问题所在,请确保它真实地代表了您的隐私政策(请查看http://www.techrepublic.com/blog/software-engineer/craft-a-p3p-policy-to-make-ie-behave/),以便在生产中使用。
如果您在状态栏中看到隐私眼图标(如果我没记错的话,它看起来像http://divabradford.org.uk/media/36647/ie_privacy.jpg),那么提示Cookie被阻止。

那是我的另一个猜测,还有一些悬而未决的问题,所以我会进行测试。 - Alex Borsody

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接