Apache背后的Spring Boot应用程序中的会话超时
Posted
技术标签:
【中文标题】Apache背后的Spring Boot应用程序中的会话超时【英文标题】:Session timeout in Spring Boot app behind Apache 【发布时间】:2017-03-16 22:14:35 【问题描述】:我的应用使用 Spring Boot,我希望用户会话超时为 12 小时。 我将 server.session.timeout=43200 放在我的 application.properties 中,但会话在 12 小时之前仍然过期。
应用程序在 Apache 服务器后面的 Tomcat 7 实例中运行。我需要在容器或服务器中做任何额外的配置吗?
【问题讨论】:
【参考方案1】:这些属性 (server.*
) 仅在 SpringBoot 控制 Tomcat(即具有嵌入式 Tomcat 部署为可执行 JAR 的 SpringBoot)时才有效,而不是在将其作为 WAR 部署到现有 Tomcat 实例时有效。
因此,您需要以“旧”方式之一配置会话超时: 例如
通过 Tomcat: Default session timeout for Apache Tomcat applications
通过 Spring Security: Setting session timeout period with Spring Security 3.0
【讨论】:
谢谢!我将添加一个 request.getSession().setMaxInactiveInterval(43200);进入我的 AuthenticationSuccessHandler。以上是关于Apache背后的Spring Boot应用程序中的会话超时的主要内容,如果未能解决你的问题,请参考以下文章
NGINX 反向代理背后的 Spring Boot API REST
非默认端口上的反向代理背后的 Spring Boot Cors
Spring boot,jdbc 模板在手动应用程序 jar 启动后工作,但不能通过 cron。背后的原因可能是啥?
是时候给大家介绍 Spring Boot/Cloud 背后豪华的研发团队了