我正在使用 Grails 3.2.3。我增加了会话超时,即在中添加以下内容application.yml:
application.yml
server: session: timeout: 604800 #one week in seconds
这在开发过程中工作正常,即session.getMaxInactiveInterval()返回604800,但是当我在Tomcat上部署WAR时(使用Tomcat 8.5.6 ),该会话超时设置不会得到反映,默认值为1800秒。
session.getMaxInactiveInterval()
"org.springframework.boot:spring-boot-starter- tomcat"设置为provided中build.gradle。
"org.springframework.boot:spring-boot-starter- tomcat"
provided
build.gradle
(我之前曾按照此处描述的方式修改会话超时,网址为但后来我意识到,这与嵌入式tomcat有关,因此已切换到上述application.yml设置)
我在这里想念什么吗?
最好的猜测是,您部署到的Tomcat容器不使用
server: session: timeout: 604800
您设置的值,因为这只是嵌入式Tomcat容器的指令。进行战争部署时,必须将部署的Tomcat服务器配置为:
https://tomcat.apache.org/tomcat-8.0-doc/config/http.html