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

User Getting Logged out in IE when closing browser

我正在 运行 建立一个 Drupal 7 站点,我注意到 IE9 上的一个问题,当浏览器 window 关闭时用户被注销。我们启用了 "remember me" 模块并将 cookie 设置为不过期。 Chrome 或任何其他浏览器都没有问题,您可以关闭浏览器,当您打开它时用户仍然登录。我在 运行 使用的任何其他 D7 网站上都没有看到这个问题同样的浏览器和计算机。主机是Blackmesh。

settings.php has $cookie_domain = '.mydomain.com'; 我正在考虑将其更改为 $cookie_domain = 'www.mydomain.com';,因为网站总是重定向到 www,这对我来说很有意义,也是我和我的系统管理员朋友一致同意的。

我正在考虑的一个潜在解决方案是在 settings.php $cookie_domain = 'www.mydomain.com';

中设置 cookie 域

我注意到网站上有一些 cookie 从 www.my 域提供,一些从 .mydomain

我发现一些线程似乎有隐约相似的问题。

http://forums.modx.com/thread/76947/ie-login-issue-with-www-vs-non-www-address

https://www.drupal.org/node/280623

cookie 域是 .mydomain.com 而不是 www.mydomain.com 应该没有任何问题,因为在根域上设置的 cookie 应该在任何 "subdomain" 这样的作为 www,虽然尝试一下也没什么坏处,因为它很容易改变。

根据 IE 中的 cookie 隐私设置,如果未发送正确的 P3P header,则可能不会为该站点保存 cookie。为了进行测试,我很确定您可以使用 p3p:CP="CAO PSA OUR"(因此在 .htaccess 中将 Header 设置为 P3P 'CP="CAO PSA OUR"'。我不知道正确的 P3P 是什么你的情况,如果这实际上是问题,但这是我看到的一个不同的 "only IE is blocking cookies" 问题。如果这不起作用,你可能需要稍微研究一下。

如果这是问题所在,那么为了在生产中使用它,请确保它真实地代表了您的隐私政策(查看 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 被阻止。