2008-11-12 7 views
9

Ich betreibe eine Website mit ASP.NET 2.0. Hin und wieder (10+ Mal pro Tag bei mehr als 100 Benutzern täglich) erhalte ich diesen Fehler: Formularauthentifizierung fehlgeschlagen - Ticket geliefert ist abgelaufen.Fehler 4005 Formularauthentifizierung fehlgeschlagen - Ticket geliefert ist abgelaufen

Hier ist mein web.config Snippet:

<authentication mode="Forms"> 
    <forms name=".CLLSAUTH" loginUrl="login.aspx" protection="All" path="/" timeout="60" /> 
</authentication> 

ich an mehreren Lösungen gesucht haben, jemand erwähnt die Session-Timeout, aber es ist auch 60 Minuten in meiner Konfig. Zwei weitere Dinge, ich betreibe keine Webfarm und die App wird nicht um den Zeitpunkt des Fehlers recycelt.

Irgendwelche Hinweise?

+0

Dies wird durch die Wiederverwendung des App-Pools, Sitzungszeitlimit und Authentifizierungstimeout gesteuert. –

+1

Warum wurde das als Off-Thema geschlossen? Es ist eine Programmierung, die Frage betrifft. – Junto

+0

@junto. Ähm. Ich erinnere mich nicht. Ich habe zu dieser Zeit (vor fast 2 Jahren) keine Notiz hinterlassen. Ich kann sie wieder öffnen, nehme ich an. – edosoft

Antwort

3

Ich bin mir nicht sicher, was Ihre Frage ist ... In diesem Fall, wenn ein Benutzer seinen Browser länger als eine Stunde geöffnet hat, überschreitet sein Authentifizierungs-Cookie das Zeitlimit. Das nächste Mal senden sie eine Anfrage an die Server-BAM.

Versuchen Sie, das Formularelement slidingExpiration="true" hinzuzufügen. Auf diese Weise wird die Zeitüberschreitung jedes Mal neu gestartet, wenn ein Benutzer den Server erreicht.

Dies könnte möglicherweise auch daran liegen, dass IIS Ihren Arbeitsprozess recycelt hat. Sie müssen Ihre Protokolle überprüfen, um zu sehen, ob dies passiert ist, bevor jemand diesen Fehler verursacht hat.

Wenn Ihre Anwendung auf verschiedenen Servern ausgeführt wird, liegt möglicherweise ein Problem vor, wenn der Computerschlüssel im Formularauthentifizierungs-Cookie zurückgewiesen wird, da er auf einem anderen Server erstellt wurde. Aber es hört sich nicht so an, als würden Sie auf einer Webfarm von Ihrer Website laufen.

+0

Aaron erinnerte mich daran der Worker Prozess recycling ... – Will

+1

Meine Frage ist, wie man diesen Fehler verhindert. Und wie geklärt, verwende ich keine Webfarm, noch wird der IIS-Arbeiter das Recycling durchführen. Ich werde versuchen, Ihren Vorschlag für den gleitenden Ablauf zu überprüfen. Vielen Dank. – edosoft

Verwandte Themen