我有一个 Java Web 项目, Nginx作为http代理, Tomcat 作为后端 Servlet 容器。
部署在 Tomcat 上的应用程序具有上下文路径,其运行方式类似于 http://localhost:8080/project-name
我向用户展示该项目,如下所示:www.project-name.com 与: proxy_pass http://localhost:8080/project-name/
我在 Java Web 项目中使用 session ,该 session 由以 JSESSIONID 名称发送的 cookie 处理。
问题是 JSESSIONID 有一个带有/project-name/的 cookie 路径,并且浏览器无法访问它,因为用户没有浏览 www.project-name.com/project-name/
您知道解决这个问题的最佳实践是什么吗?
最佳答案
http://tomcat.apache.org/tomcat-6.0-doc/config/context.html
查找 sessionCookieDomain
、sessionCookieName
和 sessionCookiePath
。
关于使用 Web 服务器作为负载均衡器时的 Java Web session cookie 路径问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9320319/