L’autorisation ou la session ASP.NET mvc expire plus rapidement que défini

Dans mon site Web ASP.NET MVC5, la connexion et le délai d’expiration de la session dans web.config sont les suivants:

      

Encore la session ou l’authentification fois notre en cinq minutes. J’ai approché mon fournisseur d’hébergement Web pour augmenter le délai d’expiration dans IIS et ils ont partagé une capture d’écran après avoir augmenté le délai d’expiration dans IIS, mais rien n’a changé. Toute idée pourquoi cela se passe.

Tout d’abord, essayez de définir le délai de session Session_Start méthode Session_Start dans Global.asax:

 void Session_Start(object sender, EventArgs e) { Session.Timeout = 60; } 

Remarque: En utilisant l’état de session en cours de traitement, vos sessions seront effacées de tous les pools de pool d’applications IIS qui sont recyclés après 5 minutes dans votre pool d’applications d’émission.

Si la tentative ci-dessus ne fonctionne pas et que vous avez access à la gestion IIS du serveur, procédez comme suit:

  1. Ouvrez le gestionnaire IIS.
  2. Sélectionnez Pools d’applications => [nom de votre pool d’applications] => Recyclage / Paramètres avancés.
  3. Activez l’ Regular time interval (minutes) et réglez-le sur 60, puis appliquez vos modifications.

Si vous n’avez pas access aux configurations du gestionnaire IIS et du serveur SQL, vous pouvez essayer la gestion de l’état de session basée sur la firebase database au lieu du mode InProc (voir Référence MSDN ci-dessous).

L’état de session basé sur la firebase database nécessite de changer l’atsortingbut de mode sur SQLServer , par exemple:

    

Référence:

MSDN: https://msdn.microsoft.com/en-us/library/ms178586.aspx

La session expire trop rapidement dans l’application asp.net mvc4

C’était un problème avec la variable SystemIdleTime dans IIS. J’ai demandé à mon fournisseur d’hébergement d’augmenter cette valeur à 30 minutes et cela a fonctionné.

Cela indique que toutes mes variables de session seraient effacées lorsque le pool d’applications sera fermé lorsqu’il n’y a pas de demande pendant 30 minutes. Cette valeur remplacerait le délai d’expiration de la session défini dans le fichier Web.cofig du site Web. Vous pouvez le définir sur 0 pour indiquer que le pool d’applications ne sera jamais fermé, puis vous pouvez contrôler le délai d’expiration de la session via web.config. J’ai aussi trouvé ce bon article