2012-04-12 11 views
0

Obwohl ziemlich ineffizient, brauchte ich na ASP.NET-Sitzung für 10 Stunden zu halten ... (600 Minuten)Session-Timeout, bevor aufgrund

Also schrieb ich in dem Web-Config ...

<authentication mode="Forms"> 
    <forms slidingExpiration="true" loginUrl="algoExpirou.aspx" name="AuthCookieConte" timeout="600" path="/"> 
    </forms> 
</authentication> 

und 'Das TICKET ...

Dim isPersistent As Boolean = False 
    Dim ticket As New FormsAuthenticationTicket(1, strNomeDoRespondente, System.DateTime.Now, DateTime.Now.AddMinutes(600), isPersistent, userData, FormsAuthentication.FormsCookiePath) 
    Dim encodedTicket As String = FormsAuthentication.Encrypt(ticket) 
    Response.Cookies.Add(New HttpCookie(FormsAuthentication.FormsCookieName, encodedTicket)) 

Session !!

Session.Timeout = 600 

Auf jeden Fall etwas geht nach etwa 25 Minuten aus ... aus einem Protokoll:

5:11:25 - angemeldet

5:35:28 - Time-out ...

0:24:03 der unterschied

Rigth jetzt habe ich eine Ahnung, was passiert. Das Hosting für die Seite wird geteilt, ich frage mich, ob es eine Grenze für die Auszeit gibt, aber die Seite wird getestet, niemand benutzt sie!

Vielen Dank für jede Idee darüber ... Grüße, RConte

Antwort

0

Sitzungszeit und Authentifizierung Zeit sind aus zwei verschiedene Dinge. Sie setzen Ihr Authentifizierungs-Timeout nur auf 10 Stunden.

+0

Danke für die Antwort ... Session.Timeout = 600 (siehe oben) Ich würde sagen, Session-Timeout festlegen ... –

+0

Wo setzen Sie die Sitzung Timeout? – TheGeekYouNeed

0

ok, leute, löse es einfach! Die Seite befand sich auf einer Hosting-Seite, die ein sogenanntes "CLOUD" -Hosting nutzte. Es wurde in eine "nicht-CLOUD" in der gleichen Hosting-Firma verschoben und es begann gut zu funktionieren! (Ich habe die Support-Leute nach dieser Möglichkeit gefragt, aber sie waren überhaupt nicht hilfreich). Es dauerte nur 2 Tage, um zu lösen ... aber ich habe einiges gelernt. Grüße, R Conte

0

Ich weiß, dass es zu spät für diese Frage im Spiel ist, aber ich bin davon schon einmal erwischt worden. Es gibt eine App-Pool-Einstellung in IIS, die the "idle timeout" steuert. Wenn das Leerlauf-Timeout erreicht ist, wird der App-Pool-Worker-Prozess heruntergefahren. Ich glaube, der Cookie für die Formularauthentifizierung lebt, während die Sitzung abbricht. Normalerweise setze ich das Idle-Timeout auf 0 (so dass es kein Timeout gibt) und konfiguriere IIS, um meine App-Pools jeden Tag zur gleichen Zeit wiederzuverwenden (z. B. - 1 Uhr nachts, wenn es auf der Site keine oder nur minimale Nutzung gibt).

Verwandte Themen