ASP.NET Pourquoi la durée des sessions de sortir, sessionstate le délai défini
Hey j'ai la ligne suivante dans mon web.config
<sessionState mode="InProc" timeout="45"/>
Qui j'ai pensé serait de garder les sessions intacte pendant 45 minutes
Mais j'ai vu dans le cas où si un utilisateur est inactif pendant disons 15 minutes des séances du temps.
Comment puis-je empêcher cela ?
Edit : Viens de remarquer que j'ai la ligne suivante dans la page maître
meta http-equiv="Refresh" content="1800;URL=http://www.virtualacademy.ie/login.aspx">
C'est peut-être l'origine du problème, ce qui est au-dessus de la ligne de faire-je.e le nombre de 1800
Vous devez vous connecter pour publier un commentaire.
Si l'utilisateur ferme son navigateur ou efface les cookies, ou si le domaine d'application sur le serveur est recyclé, l'état de la session sera perdu.
Avez-vous vérifié les logs pour voir si l'application de recyclage?
Assurez-vous de vérifier votre configuration IIS parce que le pool d'applications que votre site est hébergé sur aussi a sa propre valeur de délai d'expiration qui remplacera votre propre .config.
Pour l'augmenter,
Espère que cette aide.
(Si vous n'avez pas de serveur dédié /accès IIS à l'aide de votre fournisseur d'hébergement, vous aurez à les contacter pour voir si ils peuvent l'augmenter pour vous)
Idle Time-out
est 43200, mais la valeur doit être <=Regular Time Interval
's de la valeur, qui est par défaut 1740 minutes.AppDomain recycle sont un problème très commun pour cette si la
sessionState
estInProc
. Il est très conseillé d'utiliser unStateServer
ouSQLServer
pour les systèmes de production à la place. Voir Modes D'État De Session pour la documentation sur l'utilisation de chacun, et les avantages et les inconvénients des trois types différents.Personnellement, nous utilisons SQL Server si nous devons pour le serveur web fermes--plus lent mais peut être partagée. Nous utilisons un Serveur si le site ne sera hébergé sur un serveur web unique--état survit domaine d'application redémarre, mais pas tout le serveur redémarre.
Aussi, dans le passé, nous avons utilisé un AJAX post en arrière-plan lorsque l'utilisateur est en regardant de longues vidéos en cours d'exécution ou de réalisation à long du côté client de tâches, de sorte que le délai d'expiration de session est remis toutes les quelques minutes. Rien de spécial à propos de ce code, avoir juste un peu de JavaScript coup toutes les quelques minutes page ASPX qui ne retourne rien.
Êtes-vous à l'aide de l'Authentification par Formulaires? Il dispose de son propre paramètre de délai d'expiration que lors de l'expiration de rediriger l'utilisateur vers votre page de connexion, même si la session est toujours valide.