2010-06-01 117 views
4

我遇到了一個非常不尋常的錯誤,我的團隊幾乎不知道如何解決。做了一些研究,我發現了一些我認爲會起作用的類似解決方案,但唉並沒有。Internet Explorer在cakePHP中隨機刪除頁面之間的會話

這是我的情況,讓我知道如果我可以提供更多的見解來幫助解決問題。

第一步是有人通過閃光燈地圖選擇一個國家。 Flash通過該URL傳遞該區域名稱(以及日期),然後我們將其轉換爲會話。下一頁不包含Flash,並且不顯示選定的區域,但是它會保留下來以便進一步下載。

在Safari和Firefox中一切正常;但是,在IE中有時會出現意外的結果。經常(但並非總是),會話完全丟失,第一頁和第二頁之間沒有會話存儲。

這裏是我採取了迄今未果步驟:1. 從介質變化的安全 - 2.從true更改CheckUserAgent>低 - 3.從PHP會議的更改存儲>假 - >數據庫

可能有用的一些附加信息: 我試過在Debug中打印出會話數據(在我的視圖文件中調試($ _ SESSION)和在config中將debug設置爲2)。在Internet Explorer中,除非區域和日期未設置,否則所有內容均按預期打印。

例如: 如果未設置區域和日期,則將打印出任何內容用於調試。我沒有在頂部獲得會話詳細信息,也沒有在頁面底部正常轉儲呼叫。

我沒有在這些頁面上使用重定向。

請讓我知道,如果你有任何想法是什麼導致這個或任何解決方案。我非常沮喪,盡我所能去解決這個問題。

謝謝!

回答

3

我建議跟蹤在兩個方向上在服務器和瀏覽器之間交換的cookie信息。查看每個請求和響應的標題,並查看是否在某個時間發送了錯誤的cookie或不發送cookie。這可能會幫助您找到問題的根源。我有一個similar problem一段時間後,我能用這種方法解決。

爲IE做這件事的最好方法是使用Fiddler

0

我們在客戶端部署時遇到了類似的問題,事實證明IE使用了一些代理服務器,並通過傳遞蛋糕應用代理來解決它。

0

當core.php中的「Security.level」設置爲「high」時,通常會發生這種情況。嘗試更改爲中或低。這已經爲我解決了這個問題。

相關問題