Ich habe in der web.config-Datei eine Session-Zeit bis zu 9 Stunden eingestellt, etwa so:
%Vor%Aber oft beschweren sich Benutzer darüber, dass sie sich in weniger als 9 Stunden der Inaktivität einer Auszeit gegenübersehen, und das Zeitintervall nach dem Zeitlimit variiert ebenfalls.
Ich habe mich gefragt, ob das Sitzungszeitlimit von einer der folgenden Einstellungen in IIS abhängt:
Bitte beraten. Wie überprüfe ich auch Sitzungstimeouteinstellung in IIS 7.0?
Die Sitzung wird verloren gehen, wenn der ApplicationPool wiederverwendet wird. Das ist eine der IIS-Einstellungen, die Sie erwähnt haben. Um nur das Timeout in der web.config zu setzen, reicht das nicht aus. Sie müssen die Einstellung in IIS anpassen.
Hier ist ein Link , den ich gefunden habe, während ich nachgeschaut habe das gleiche Problem.
Auch diese Frage war sehr nützlich: Session-Status verlieren
Wenn Sie die Formularauthentifizierung verwenden, sollten Sie sicherstellen, dass Ihr FormAuthentication-Cookie zur gleichen Zeit wie Ihre Sitzung abläuft.
Wenn nicht, vergewissern Sie sich, dass Ihr IIS nicht wiederverwendet wird. (Fügen Sie einen Logger in Ihre Global.asax ein, um die Ereignisse der Anwendung im Vergleich zu den Beschwerden Ihrer Benutzer zu überprüfen.)
Es reicht nicht aus, das Zeitlimit für die Sitzung in Ihrer Webkonfiguration festzulegen. Wenn auf dem Server, auf dem Ihre Site gehostet wird, weniger Zeitüberschreitungswerte in den IIS-Einstellungen festgelegt sind, wird für die Sitzung eine Zeitlimitüberschreitung gemäß dem Zeitlimitwert der Serversitzung festgelegt.
Auch wenn Sie einen Ordner aus dem Serververzeichnis löschen, kann dies dazu führen, dass Ihr AppPool unerwartet wiederverwendet wird.
Überprüfen Sie bitte den Server-Session-Timeout-Wert und wenn es weniger ist, bitten Sie Ihr Hosting, es entsprechend Ihrer Anforderung zu erhöhen.
Tags und Links asp.net iis-7 iis-6 session-state session-timeout