Spring Boot Tomcatのセッションタイムアウト設定方法

Spring BootでTomcatのセッションタイムアウトを設定する方法です。

Spring Boot Tomcatのセッションタイムアウト設定方法

Spring BootではTomcatが組み込まれているため、非常に手軽に開発ができる反面、Tomcatの設定ってどこですればいいの?って感じになります。セッションタイムアウトの時間設定もその1つだと思います。

ここでは Spring Boot組み込みTomcatのセッションタイムアウトを設定する方法 を紹介します。

war でパッケージングしてデプロイしているのであれば、デプロイ先 Tomcat の web.xml を変更してください。


Spring Boot組み込みセッションタイムアウト設定変更

Tomcatのセッションタイムアウトを設定する方法は、application.properties(yaml) に、server.session.timeout を追記します。

server:
  session:
    timeout: 60 # Session timeout in seconds.

設定は秒単位です。1と設定すれば1秒、60と設定すれば1分、3600と設定すれば1時間となります。

参考

Appendix A. Common application properties

上記ドキュメントの「EMBEDDED SERVER CONFIGURATION」欄は、組み込みサーバーの設定となっています。warで出力して別のアプリケーションサーバーで動かす場合そちらの設定に従います。

まとめ

Spring BootでTomcatのセッションタイムアウトを設定する方法を紹介しました。

多くの場合、本番環境を想定した設定を、テスト時にも設定すると思います。本番環境のセッションタイムアウト設定は2時間なのに、テスト環境では30分ということでは、何かと効率も悪かったりしますね。このように application.properties(yaml) に同じ時間設定をしておけば、トラブルも少なくて済むでしょう。

ちなみに Tomcat セッションタイムアウトのデフォルト値は 1800 (30分)となっています。

おつかれさまでした。

この記事がお役に立ちましたら シェア をお願いいたします。