Automatische Umleitung zur login-nach session-timeout
Ich versuche, automatisch umleiten, um mein login-Seite nach der session mal raus.
Ich versuchte fügen Sie diesen code in meine Main.Master-Seite (alle anderen Seiten verbunden sind, die diese master-Seite):
protected void Page_Load(object sender, EventArgs e)
{
//Redirects to Login Page 3 seconds before session timeout
Response.AppendHeader("Redirect", Convert.ToString((Session.Timeout * 60) - 3) + "; URL=~/Login.aspx");
}
Konfigurierte ich den session-timeout auf 1 minute in meinem web-config:
<sessionState mode="InProc" cookieless="false" timeout="1"/>
aber es passiert nichts
Kann mir jemand helfen das problem zu finden mit diesem code, oder hat andere Ideen, wie es funktionieren?
Bearbeiten: Authentifizierung Knoten aus dem web.config
<authentication mode="Forms">
<forms name=".CAuthenticated" loginUrl="Login.aspx" protection="All"
timeout="20"/>
</authentication>
können Sie mehr aus Ihrem web ein.config? Das ist, wo Sie behandelt werden sollen, und Sie können geben Sie einen login-Seite.
Werden Sie ausgeführt, dies ist IIS oder Visual Studio verwenden aufgebaut im host?
Visual Studio eingebauten host
extremeexperts.com/Net/Articles/...
Werden Sie ausgeführt, dies ist IIS oder Visual Studio verwenden aufgebaut im host?
Visual Studio eingebauten host
Response.AppendHeader("Redirect", 60)
Kann jemand mir einen Hinweis zu dieser. (Wenn es tatsächlich gültig ist und funktioniert, ist)extremeexperts.com/Net/Articles/...
InformationsquelleAutor Inbal | 2012-07-31
Du musst angemeldet sein, um einen Kommentar abzugeben.
AppendHeader
dokumentiert ist, wie verursachen eine Ausnahme, wenn "header angehängt, nachdem die HTTP-Header gesendet wurden," Sie müssen sicherstellen, dass AppendHeader aufgerufen wird, bevor die HTTP-Header gesendet wurden. Je nach Ihrem master-Seite, dieLoad
Ereignis könnte zu spät sein. Sie könnten versuchen, dieInit
Veranstaltung statt.wenn die Umleitung funktioniert, bekomme ich Angeforderte URL: /Webseite/Seiten/~/Login.aspx weißt du, warum? und wie es scheint, es nimmt dem Inhalt Seite Lage und nicht die app root.
~/Login.aspx ist nur text, wenn Sie möchten, zu übersetzen, in eine relative url verwenden, so etwas wie VirtualPathUtility.MakeRelative
Ich danke Ihnen sehr sehr sehr viel 🙂
InformationsquelleAutor Peter Ritchie
InformationsquelleAutor
Hier ist ein Beispiel, das ich habe, das funktioniert für mich:
Wenn Sie diese haben, gibt es keine Notwendigkeit für Sie, überprüfen Sie die timeout-cookie selbst. Dies wird vorausgesetzt, Sie die Formularauthentifizierung verwenden.
InformationsquelleAutor Chris Knight
Ich glaube, Sie brauchen, um zu verwenden
Refresh
anstelle von "Weiterleitung" in deinem header:InformationsquelleAutor D Stanley