royappa
royappa

Reputation: 701

The ticket supplied has expired

I believe I have studied all related stackoverflow questions as well as other web resources, but am still having this problem a dozen times or more daily in a 24x7 web app that is used by about 20 users at a time.

Event code: 4005 
Event message: Forms authentication failed for the request. Reason: The ticket supplied has expired. 

Users are saying that they are getting logged out earlier than the 60 minute timeout. (Some of the forms in the app take a long time to fill out. Users are interviewing people and writing notes, which can take a long time. So it's frustrating if you save the form after 20-30 minutes of slowly entering notes and it logs you out when you submit the form.)

Some details:

  1. This is a single web server running IIS 7.5, not a form (the database is on another box). All servers are VMs
  2. IIS session state is set to "In Process", and under cookie settings the timeout is 60 minutes.
  3. The App Pool has idle timeout set to 60 minutes and recycling interval to 29 hours
  4. I don't see any errors in the event log prior to these "ticket expired" messages that indicate a worker process failed or the app pool was recycled.

And finally a snippet from the web.config:

<authentication mode="Forms">
<forms loginUrl="~/Account/Login.aspx" timeout="60" protection="All"     slidingExpiration="true" />
</authentication>

Any help to track down these session timeouts would be appreciated.

Upvotes: 3

Views: 5006

Answers (1)

Dilish
Dilish

Reputation: 439

I have used jquery idle timer to track the user inactivity and display a warning before session times out. Also allow the user to renew the session by making a Ajax call. Just for reference you can refer these links

link 1

link2

Upvotes: 1

Related Questions