【问题标题】:IE sends multiple cookies with same name?IE 发送多个同名 cookie?
【发布时间】:2011-02-07 23:06:02
【问题描述】:

我在我的网站上的 IE7/XP 和 IE8/Vista 中出现了一个奇怪的错误。 IE 发送两个名为 PHPSESSID 的 cookie。

如何重现:

  1. 清除 IE 中的 cookie(如果您从未访问过 unisender.com,则不需要)。

  2. 访问 unisender.com(完全没有 www 复制!),它将重定向到 www.unisender.com

  3. 使用任何有效的用户名和密码登录(我已经用密码 testmsdn 注册了用户名 testmsdn - 随意用于测试)

  4. 运行你最喜欢的流量捕获程序(我更喜欢wireshark)

  5. 现在点击任意菜单链接(例如“消息”)

  6. 查看捕获的流量 - 您会看到 IE 发送了双 PHPSESSID cookie(因此单击后您会注销)。似乎第一个 PHPSESSID 来自 unisender.com,第二个来自 www.unisender.com。

捕获的样本:


GET /en/letter_list HTTP/1.1

接受:image/gif、image/jpeg、image/pjpeg、application/x-ms-application、application/vnd.ms-xpsdocument、application/xaml+xml、application/x-ms-xbap、application/x -冲击波闪光,/

推荐人:http://www.unisender.com/en/intro

接受语言:ru

用户代理:Mozilla/4.0(兼容;MSIE 8.0;Windows NT 6.0;Trident/4.0;Mozilla/4.0(兼容;MSIE 6.0;Windows NT 5.1;SV1);SLCC1;.NET CLR 2.0.50727;. NET CLR 3.5.21022;.NET CLR 3.5.30729;FDM;.NET CLR 3.0.30729)

接受编码:gzip、deflate

主机:www.unisender.com

连接:保持活动状态

Cookie:authchallenge=3a9cfcfc9fe33822e3e21d75c8a3d3e4; PHPSESSID=14ea1cb133632951592397c86eaf037e; us_reg_ref=未知; us_reg_url=http%3A%2F%2Funisender.com%2F; __utma=1.778517853.1271204400.1271204400.1271204400.1; __utmb=1.3.10.1271204400; __utmc=1; __utmz=1.1271204400.1.1.utmcsr=(直接)|utmccn=(直接)|utmcmd=(无); PHPSESSID=65e110aeb995a66b9dc8da5656c7a3da; last_login_name=testmsdn


我尝试使用会话和非会话 cookie,尝试使用 .unisender.com 而不是 unisender.com 作为 cookie - 没有任何帮助。

我想不应该有同名的cookies。

我说的对吗?是IE的bug吗?如果这是一个错误,那么是否有解决方法?

还是我错了,这是预期的行为?

【问题讨论】:

    标签: internet-explorer cookies


    【解决方案1】:

    这是设计使然。

    您不应该为您网站的“无 www”版本发送 cookie,或者您的网站的两个版本都应该在 PHP 会话 cookie 上设置“domain=example.com”属性。

    否则,这些 cookie 实际上并不相同,因此您将收到两个。 http://blogs.msdn.com/ieinternals/archive/2009/08/20/WinINET-IE-Cookie-Internals-FAQ.aspx

    【讨论】:

    • 谢谢。我不确定这是一个好的设计决定,但现在至少很清楚了。顺便说一句,在问这个问题之前,我已经阅读了你所有的“cookie internals”页面。感谢您的页面。但我没有看到与我的问题相匹配的段落。
    • 在FAQ中是“Q3:如果我在cookie的时候不指定DOMAIN属性,IE还是把它发送到所有嵌套的子域?”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 2015-12-26
    • 2020-04-18
    • 1970-01-01
    • 2013-06-07
    • 1970-01-01
    相关资源
    最近更新 更多