2013-11-26 93 views
0

現在讓我擔心的是一個煩惱。即使沒有cookie時,Tomcat 6也可以恢復會話

我正在測試一個Web應用程序,使用一個用戶帳戶登錄。我關閉了瀏覽器,回收了服務器,打開了一個新瀏覽器並刷新了緩存,然後使用其他帳戶登錄。

對「新」會話的檢查顯示,即使應用程序沒有可用於識別用戶的cookie,前一會話(以及所有會話數據)也已恢復。

Tomcat是否根據IP地址和遠程用戶從頭返回會話?如果是這樣,那麼可以禁用這種行爲,而不是完全禁用會話持久性?

+0

您是否明確地從瀏覽器中清除了Cookie?這通常是清除緩存的單獨操作。可能會使用永久性Cookie和永久性會話的組合。值得看看應用程序代碼 - 看看它是否做了超過默認的會話創建。同樣值得檢查Tomcat server.xml以查看會話管理器(http://tomcat.apache.org/tomcat-7.0-doc/config/manager.html)是否有任何特殊配置,住了。 –

回答

0

Tomcat的會話管理器無法做到這一點 - 即使是配置。 Tomcat只使用該ID來標識會話,並且在URL中沒有cookie或會話標識的情況下,Tomcat 6無法將請求映射到舊會話。

您需要查看應用程序正在執行的操作以及已應用於Tomcat安裝的任何自定義。