铬的问题如下:
我已经在服务器上运行了一个Grails 1.3.7应用程序。我注意到,当我从Chrome请求静态内容(例如非动态html-文件)时,Chrome会创建两个JSESSIONID-Cookies。第一个当登录窗口出现时,第二个在成功登录之后。如果我想刷新页面,或者请求其他资源,我必须再次登录。(我想是因为Tomcat不明白那两个饼干)
我试过用FF,但是FF只是创造了一个Cookie,它的工作非常完美。而且,我已经在本地运行了这个应用程序,它甚至与铬完美地工作。所以,有些事一定是错的。
环境:
我的httpd.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:
我在服务器上(使用chrome)在本地试用了它:
看来Apache才是问题所在。
解决方案:
我得到了:) Grails *..gsp模板总是在每个请求上请求'favicon.ico‘。在静态内容(如html-file)上出现错误的原因是我们从重定向到这些资源。
所以我把favicon.ico放在了正确的位置,现在它起作用了:)
这个错误只是涉及谷歌Chrome,在FF和IE中,它的工作没有任何问题。
发布于 2012-03-20 11:31:09
我也遇到了这个问题。我花了一段时间才弄清楚到底发生了什么(包括用Wireshark进行嗅探),还有更多的时间来找到可行的解决方案。最后我找到了这个线程https://vaadin.com/forum/-/message_boards/view_message/1216366
这是Chrome/Safari (Webkit浏览器?)的一个问题。以及他们处理重定向饼干的方式。简单的修复方法是在我的spring项目中将一个context.xml添加到META目录中,其中包含
<?xml version='1.0' encoding='utf-8'?>
<Context sessionCookiePathUsesTrailingSlash='false'>
</Context>然后重新部署新的war文件。现在一切都如愿以偿。
https://stackoverflow.com/questions/8880592
复制相似问题