2012-12-02 136 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

相關問題