【发布时间】:2011-02-07 23:06:02
【问题描述】:
我在我的网站上的 IE7/XP 和 IE8/Vista 中出现了一个奇怪的错误。 IE 发送两个名为 PHPSESSID 的 cookie。
如何重现:
清除 IE 中的 cookie(如果您从未访问过 unisender.com,则不需要)。
访问 unisender.com(完全没有 www 复制!),它将重定向到 www.unisender.com
使用任何有效的用户名和密码登录(我已经用密码 testmsdn 注册了用户名 testmsdn - 随意用于测试)
运行你最喜欢的流量捕获程序(我更喜欢wireshark)
现在点击任意菜单链接(例如“消息”)
查看捕获的流量 - 您会看到 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吗?如果这是一个错误,那么是否有解决方法?
还是我错了,这是预期的行为?
【问题讨论】: