2012-12-02 203 views
1

我有一个页面在登录后向用户的浏览器发送会话cookie。 Chrome和Firefox中的登录工作正常,但不适用于IE9。在Firefox和Chrome浏览器中工作的Cookie,而不是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 handlingAlways allow session cookies也会出现这种情况。

回答

4

http://tools.ietf.org/html/rfc2616#section-3.3.1

expires=Sun,的标头不是有效格式(它并不明显,应选择哪个星期日)。

尝试发送expires的形式expires=Sun, 07 Dec 2012 00:00:00 GMT(由RFC推荐)。

+0

@dgel我很惊讶FF + CH确实接受了cookie。 –

+0

是的 - 我想他们很有韧性... – dgel

+0

是的,这是绝对的原因。我的反向代理正在屠宰原始标题。 – dgel

相关问题