我有一个页面,在登录后向用户的浏览器发送会话cookie。登录在Chrome和Firefox中运行良好,但不适用于IE9。
使用IE的F12开发模式,我可以看到Set-Cookie
标题已发送到浏览器:
Set-Cookie: workgroup_session_id=abc123; expires=Sun,; Path=/
这是星期六晚上作为回复标题发送的Set-Cookie
。
但是,当IE9进行下一个响应时,它不会发送workgroup_session_id
cookie(因此它会再次获取登录表单)。
相同的Set-Cookie
被发送到Chrome或Firefox,正如预期的那样,他们会在下一个请求中发送workgroup_session_id
,并且每个人都很高兴。
为什么这不适用于IE9?我没有使用任何奇怪的安全设置或插件和其他cookie工作正常。另一个引起我注意的问题的客户只是在IE9中遇到了同样的行为。
我认为这不是P3P相关问题。当我将我的隐私设置设置为Accept All Cookies
时,它仍会出现。
即使我检查Override automatic cookie handling
和Always allow session cookies
,也会发生这种情况。
答案 0 :(得分:4)
http://tools.ietf.org/html/rfc2616#section-3.3.1
expires=Sun,
标头格式无效(应该选择哪个星期日并不明显。)
尝试以expires
形式发送expires=Sun, 07 Dec 2012 00:00:00 GMT
(根据RFC的建议)。