【发布时间】:2012-06-02 05:06:38
【问题描述】:
我有一个应用程序处理多个子域,例如
- sub1.domain.com
- sub2.domain.com
- www.domain.com
- domain.com
用户在使用应用程序时可以在这些子域之间切换。发生这种情况时,会话不会在这些子域之间共享。我使用 tomcat 作为开发和生产服务器。
我正在尝试使共享会话首先在开发中工作。在阅读时,发现在tomcat中实现这一点的方法是:
<Context sessionCookiePath="/" sessionCookieDomain=".domain.com">
有没有办法可以在开发环境的tomcat中设置这个?
我在 _Events.groovy 中尝试了以下代码,但没有成功:
eventConfigureTomcat = {tomcat ->
def context = tomcat.addContext("","/")
context.setSessionCookieDomain(".domain.com")
context.setSessionCookiePath("/")
}
我收到错误 java.lang.IllegalArgumentException: addChild: Child name '' is not unique
我假设我需要的是以下代码的等效项(由于没有 getContext 方法,因此无法工作):
eventConfigureTomcat = {tomcat ->
def context = tomcat.getContext("") //This function does not exist
context.setSessionCookieDomain(".domain.com")
context.setSessionCookiePath("/")
}
关于如何在开发和生产中实现此功能的任何建议? 提前感谢您的帮助。
【问题讨论】:
标签: tomcat grails subdomain session-cookies