2009-08-17 3 views
5

Cela m'énerve vraiment, et cause probablement le déclin de l'utilisateur sur mon site web. J'utilise l'authentification par formulaire pour connecter mon utilisateur àASP.NET: l'utilisateur ne restera pas connecté pendant plus de 30 minutes

Je le paramètre « persist » valeur true par défaut lorsque l'utilisateur se connecte à:.

RedirectFromLoginPage(userString, True) 

et

SetAuthCookie(userString, True) 

En mon fichier web.config j'ai l'attribut « délai d'attente » sur « 129600 »:

<authentication mode="Forms"> 
    <forms loginUrl="/registration/login.aspx" 
    timeout="129600" slidingExpiration="true" /> 
</authentication> 

J'ai appelé ma compagnie d'hébergement et ils ont dit que le problème devait être avec mon code. Je ne crois pas que ce soit le cas.

Qu'est-ce que le # (@% @ & (#% & @ (# *% pourrait être mal ??

EDIT Ceci fonctionnait bien jusqu'à ce que je suis passé des hôtes. Cela m'a amené à croire que ce n'était pas mon code, mais en fait l'hôte

EDIT 2 en réponse à un commentaire à Fiddler, voici ce que je reçois de Fiddler quand je charge la page.

 
Set-Cookie: .ASPXAUTH=; expires=Tue, 12-Oct-1999 07:00:00 GMT; path=/; HttpOnly 
Set-Cookie: .ASPXAUTH=[some gobbledygook]; 
    expires=Sun, 15-Nov-2009 20:46:29 GMT; path=/; HttpOnly 
Set-Cookie: ASP.NET_SessionId=vudqghfplqnh5hz1qw1cwebt; path=/; HttpOnly 

Répondre

2

Un certain nombre de facteurs peuvent provoquer un dépassement de délai. This Blog fournit un bon aperçu.

+0

Cet article parle de l'état de session - cela n'a rien à voir avec les formes auth un cookie .ASPXAUTH. – UpTheCreek

1

Vous pouvez utiliser Fiddler pour vérifier la date d'expiration définie sur le cookie qui revient de la page de connexion.

+0

voir mon édition 2 pour ma réponse de violoniste – Jason

+1

pourquoi le deuxième cookie ne restera-t-il pas? – Jason

0

La cause de ce comportement pour moi est généralement le délai d'attente IIS Idle.

3

Votre pool d'applications peut être en cours de recyclage, soit sur une période définie, soit en fonction d'un seuil de mémoire ou de processeur. Si ça fonctionnait bien, et rien d'autre n'a changé, je pense que ce serait là où j'explorerais d'abord.

+0

est-ce quelque chose que l'hôte contrôle? – Jason

+0

Oui. Voir ceci pour IIS6 - http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/1eee28e2-b319-4b4e-8267-a8c0aa0dcf36.mspx?mfr = true et ceci pour IIS7 - http://technet.microsoft.com/en-us/library/cc753179(WS.10).aspx. –

+0

euh ... mon hôte est godaddy ... devinez ce problème ne va pas partir de sitôt ... – Jason

1

Comme vous le savez, j'ai un problème similaire. Ce qui peut se produire est le pool d'applications est shutting down. Faire un test: ouvrez votre session dans 2 navigateurs différents et dans l'un d'eux rechargez la page web en moins de 20 minutes, tandis que dans l'autre ne faites rien.

Ce qui peut arriver est que vous ne serez pas déconnecté de l'un d'eux parce que le pool d'applications est maintenu en vie.

modifier:

Essayez ceci: http://authors.aspalliance.com/paulwilson/articles/?id=12

+0

ça craint. merci pour la recherche – Jason

Questions connexes