J'ai un site web ASP.NET 2.0 hébergé sur Windows Server 2008 avec IIS 7. J'utilise le mode session InProc (spécifié sur le web .config). Mon client souhaite que le délai d'expiration soit de 3 heures, ce qui signifie que si le site Web est inactif, la session doit rester active pendant 3 heures. Actuellement, ce qui se passe est que si le site Web est inactif pendant 20-30 min. et si l'utilisateur essaie d'accéder à un lien, il redirige vers la page de connexion.timeout et déconnexion automatique dans asp.net 2.0 avec IIS 7 même après avoir fait tous les réglages possibles
J'ai cherché sur internet et fait tous les réglages possibles (comme suit):
Dans config web, l'état de session, le temps = 180 minutes.
En configuration web, authentification par formulaires, délai d'attente = 180 minutes.
Dans IIS 7, Site-> Caractéristiques Affichage-> L'état de session - mode d'état de session Cadre: Proc et Cookie Réglage-> Time out = 180 minutes
En IIs 7, Site-> Caractéristiques Voir -> ASP-> Services-> Session Properties-> Time out = 03:00:00 heures
Dans IIS 7, Pools d'applications-> Site-> Paramètres avancés-> Modèle de processus-> Délai d'inactivité = 180 minutes.
Même après avoir fait tous ces réglages, le délai d'attente n'a pas augmenté et toujours si le site Web est inactif pendant 20-30 minutes. et l'utilisateur essaie d'accéder au lien, il redirige vers la page de connexion. Chaque fois qu'il redirige vers la page de connexion après 20-30 minutes inactif, et si je vérifie le journal des événements sur le serveur, il dit quelque chose comme (Je ne suis pas sûr si cette erreur est liée à ce particulier problème ou non): "L'authentification des formulaires a échoué pour la requête Raison: le ticket fourni a expiré"
OK dans le code (fichier .cs), lorsque l'utilisateur se connecte, je suis en train le billet comme: // Créer le ticket d'authentification FormsAuthenticationTicket authTicket = new FormsAuthenticationTicket (1, // Version txbUserName. Texte, // nom d'utilisateur DateTime.Now, // création DateTime.Now.AddMinutes (30), // Expiration false, // Persistant rôles); // Données utilisateur – pratik
Le code derrière est l'endroit où vous devez également définir 180 minutes. – TheGeekYouNeed
Oui je viens de le faire, laissez-moi le tester :) – pratik