2008-11-25 13 views
0

J'ai une application ASP.NET 2.0. La page de connexion redirige deux fois lorsque la connexion est réussie. Cela fonctionne correctement sur tous les serveurs d'environnement de test et de production sauf un. Nous pouvons voir avec Fiddler que le login redirige vers la deuxième page et redirige vers le troisième. Lorsque vous arrivez à la troisième page, le cookie d'authentification est perdu et la page redirige vers la connexion. Comme mentionné, cela se produit uniquement sur un serveur de production avec IE7. Cela fonctionne très bien si nous essayons IE7 à partir du serveur lui-même. Il échoue uniquement à partir d'autres machines client. Cela fonctionne parfaitement bien si j'essaie juste la même chose de FireFox. Je peux voir clairement de violoniste, que dans ce cas le cookie n'est pas perdu.Cookie de session perdu avec IE7

Des idées?

Répondre

0

Définissez-vous un cookie avec un jeu de noms de domaine? Lors de la navigation, votre URL contient-elle le nom de domaine?

Les cookies «localhost» ne fonctionnent pas vraiment comme les cookies de domaine et peuvent souvent disparaître. HttpCookie contient le paramètre de domaine à définir.

+0

n'utilisant pas localhost. c'est un serveur de production –

0

Cela ressemble à un problème de configuration IIS. Avez-vous essayé de recréer le site Web sur ce serveur avec des valeurs par défaut?

+0

nous avons essayé cela. n'a pas aidé –

0

Les dates sont-elles cohérentes? par exemple. 10.09.2008 == 09.10.2008 si les paramètres régionaux sont incorrects. Donc, si vous définissez une expiration spécifique, vous pourriez l'interpréter comme en-US mais vous avez besoin d'en-NZ ou de quelque chose.

Ou vous pouvez le définir comme une date UTC mais l'ordinateur ie est UTC + 8 de sorte qu'il semble expirer rapidement?

2

Ceci est un longhot, mais le nom de serveur a-t-il un caractère de soulignement? Il y a quelque temps, il y avait un bug IE où il ne pouvait pas enregistrer les cookies d'un nom de serveur/URL qui avait un trait de soulignement, donc si je accédais au serveur par http://server_name, je ne pouvais pas enregistrer un cookie, mais j'y accédais via http://intranetdnsalias fonctionnerait très bien.