【问题标题】:Internet Explorer ignoring my cookiesInternet Explorer 忽略我的 cookie
【发布时间】:2009-05-15 09:47:53
【问题描述】:

我遇到了一个奇怪的问题,即 Internet Explorer 不接受我的 cookie。这是饼干:

set-cookie: USUSERNAME=LrceSVu6mUJ9Ztmvp4oKSQ%3D%3D; version="1"; expires=Mon, 15-Jun-2009 11:42:21 GMT; path=/; domain=.us.is

它不会为域 dev-intranet.us.is 或任何其他 us.is 域存储。但是,将 cookie 的域设置为我的开发机器 ip 地址效果很好:

set-cookie: USUSERNAME=LrceSVu6mUJ9Ztmvp4oKSQ%3D%3D; version="1"; expires=Mon, 15-Jun-2009 08:41:58 GMT; path=/; domain=192.168.34.104

在 Firefox、Opera、Safari 和 Chrome 中一切正常,但在 IE7 中却没有

有什么想法吗?

顺便说一句。使用 WebObjects WOCookie 创建 cookie。

【问题讨论】:

  • 您是通过 IP 地址还是通过主机名连接到开发服务器?

标签: internet-explorer http cookies webobjects


【解决方案1】:

您示例中的 cookie 用于“us.is”域。 IE 会忽略为两个字母的域设置的 cookie。更准确地说,它似乎忽略了来自少于 5 个字符的域的 cookie(比如你的:2+2)。

我相信 IE6 中的这个错误/功能,可能是更早的版本。读到这里,看起来这种行为在 IE7 中仍然存在。

可以在此处找到建议不切实际解决方法的 MSKB 文章:http://support.microsoft.com/kb/310676

更实用的方法可能是获得更长的域名 ;-) 或确保用户始终被重定向到一个规范名称,即“www.us.is”并在那里植入您的 cookie。

【讨论】:

  • 我认为在 S.O. 上会有一个关于 IE 和两个字母域的问题。已经,但在那种情况下我找不到它。
  • 是的,这是因为 IE 错误 .. 非常好 :) 并且 MS 建议的解决方法不起作用。我们通过将 Firefox 设置为默认浏览器解决了这个问题。幸运的是,我们的应用程序是供内部使用的 :)
【解决方案2】:

一些额外的边缘案例/细节(在 IE8 中使用 Per Site Privacy Actions [Internet Options > Privacy > Sites] 完成的测试):

以下域被拒绝

  a.a
 aa.a
  a.aa
 aa.aa

带有错误信息:

You have entered an invalid domain. Domains must be in the Internet zone
and must use the HTTP or HTTPS protocol. URLs beginning with xn-- must
be valid IDN names.

Examples of valid domains:

  - www.treyresearch.net
  - http://treyresearch.net
  - fineartschool.net

接受以下域:

aaa.a
aaa.aa
  a.aaa
 aa.aaa

   a.a.a
  a.a.aa
 a.aa.aa
aa.aa.aa

此外,在很大程度上不相关,Internet Explorer 似乎拒绝接受包含域规范中不允许的字符的域。如果(大概是在开发环境中)你有一个无效的域,IE 不喜欢它。

以下域被拒绝

a_a.aa
a%a.aa
a*a.aa
a=a.aa

带有错误消息:The site name you entered is not a valid IDN URL

测试似乎仅限于字符有效性而不是排列有效性,因为以下域是接受

aa-.aa
aa.aaa.
---.aa
-.---
---.-

希望这可以帮助人们寻找在 IE7 / IE8 中在一种环境与另一种环境中未正确设置 cookie 的详细信息。

【讨论】:

  • 这个答案非常感谢。我用 IE9 有一个多星期的问题。在我的情况下,它是我的子子域名中的下划线。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-30
  • 2010-10-22
  • 2012-09-20
  • 2011-06-29
  • 1970-01-01
  • 2015-05-21
相关资源
最近更新 更多