如何防止 Jetty/GAE 为不同的上下文路径创建新会话?
Posted
技术标签:
【中文标题】如何防止 Jetty/GAE 为不同的上下文路径创建新会话?【英文标题】:How do I prevent Jetty/GAE from creating new sessions for different context paths? 【发布时间】:2018-01-27 07:36:48 【问题描述】:我托管了一个应用程序,它使用许多不同的 servlet 路径。似乎 Jetty(GAE 使用)为请求 URL 中的每个上下文路径创建了一个新会话。
例子:
abc.appspot.com/
abc.appspot.com/path2/hello
这些路径中的每一个都使用两个不同的会话。有什么办法可以防止这种情况发生吗?我遇到了可以在 Jetty 服务器的 web.xml 文件中使用的以下配置:
<context-param>
<param-name>org.eclipse.jetty.servlet.SessionPath</param-name>
<param-value>/</param-value>
</context-param>
它对我不起作用,是我做错了还是这不可能?我听说过this is possible in Tomcat。
【问题讨论】:
【参考方案1】:我猜你想在 2 个应用程序之间共享一个会话(数据),而不仅仅是用不同的 id 共享同一个 id。
如果是这样,请检查与服务器无关的 spring-session,它可以帮助您做一些疯狂的事情
【讨论】:
我阅读了文档,它告诉我我们需要在本地系统中安装 Redis 并在端口上运行它以启用 Spring Session。我认为这在标准的 Google App Engine 环境中是不可能的。 我认为这是可能的。您还可以使用标准数据库来存储您的会话。有很多选择。 GAE 是一种 PaaS,程序员无法访问文件系统。您能否指出 GAE 文档中的一个链接,该链接显示了这是如何实现的? 您的应用程序没有数据库/数据存储?对会话使用相同的东西。以上是关于如何防止 Jetty/GAE 为不同的上下文路径创建新会话?的主要内容,如果未能解决你的问题,请参考以下文章