以下問題與鉻...:Chrome和JSESSIONID
我已經運行在服務器上的Grails 1.3.7應用程序。我注意到,當我從Chrome請求靜態內容(例如非動態html文件)時,Chrome會創建兩個JSESSIONID-Cookies。登錄窗口出現時的第一個,成功登錄後的第二個。如果我想刷新頁面或請求其他資源,我必須重新登錄。 (我認爲是因爲Tomcat不理解這兩個cookie)
我已經嘗試過使用FF,但FF只是創建一個Cookie,並且其工作完美。 另外,我已經在本地運行該應用程序,並且它甚至可以完美地與Chrome一起工作。所以,tomecat的東西一定是錯的。
環境:
- 與Grails應用1.3.7(帶有彈簧式安全核心1.2.4)
- 的Apache Tomcat 7
我的httpd(Windows Server 2008上)。 conf:
ProxyPass /manager http://myUrl:8080/manager
ProxyPass /myGrailsApp http://myUrl:8080/myGrailsApp
ProxyPassReverse /manager http://myUrl:8080/manager
ProxyPassReverse /myGrailsApp http://myUrl:8080/myGrailsApp
ProxyPass/http://myUrl:8080/myGrailsApp/frontend
ProxyPassReverse/http://myUrl:8080/myGrailsApp/frontend
在此先感謝。
更新1:
我重新建造,重新部署的應用程序,並再次重新啓動Tomcat的。
現在我注意到:Chrome不再生成兩個cookie。但錯誤是一樣的。每次刷新或請求某些內容時,JSESSIONID都會更改,我必須重新登錄。
tomcat的服務器上的一個短的手錶顯示的活動會話的數量較大 - 來自鉻...
更新2:
我試了一下在服務器本地(鉻) :
- 本地主機/對myApp /前端=>阿帕奇=> FAIL
- 本地主機:8080 /對myApp /前端=>的Tomcat =>行
看起來像Apache是問題(?)。
解決方案:
我知道了:) Grails的* .gsp模板總是要求 '的favicon.ico' 上每個請求。 錯誤出現在靜態內容(如html文件)上的原因是我們重定向到Grails應用程序中的這些資源。
所以我把favicon.ico的在正確的地方,而現在它的工作原理:)
此錯誤只涉及谷歌瀏覽器,在FF和IE瀏覽器,它的工作沒有任何問題。
您的問題和解決方案確實幫助一羣跨國企業開發人員和工程師解決了幾個月來一直在發生的生產問題。謝謝。 – rubynorails 2016-05-03 20:44:30