play.server.http.idleTimeout ignored in production (play 2.7.3)

Play Version: 2.7.3

The idleTimeout setting is ignored in production mode. It works in development by setting command line variable -Dplay.server.http.idleTimeout=300s. However, in production, I can set the variable, but it is ingored and websocket is closed after 60 seconds of inactivity.

Additionally, I cannot send ping messages to keep alive issue 3861

How are you adding the parameter when running in production? Are you adding the configuration in your application.conf?

Best.

I tried:

  1. adding in config application.conf
  2. setting command line variable (as I do in dev mode)

Hey @j-chimienti, and how did you confirmed that the configuration is not being used? For example, did you use curl or other client? Also, is there a proxy in front of the service when running in production?

Best.

Ahh I am running the app behind a nginx proxy. I believe that is causing the websocket connection to close

If I set the idleTimeout below 60 seconds, the websocket is closed accordingly.