2009-05-15 8 views
7

J'ai un problème étrange avec Internet Explorer n'acceptant pas mes cookies. Ceci est le cookie:Internet Explorer ignorant mes cookies

set-cookie: USUSERNAME=LrceSVu6mUJ9Ztmvp4oKSQ%3D%3D; version="1"; expires=Mon, 15-Jun-2009 11:42:21 GMT; path=/; domain=.us.is 

Il ne est pas stocké pour le domaine dev-intranet.us.is ou d'un domaine d'un autre. la mise Cependant, le domaine du cookie à mes machines dev adresse ip fonctionne parfaitement:

set-cookie: USUSERNAME=LrceSVu6mUJ9Ztmvp4oKSQ%3D%3D; version="1"; expires=Mon, 15-Jun-2009 08:41:58 GMT; path=/; domain=192.168.34.104 

Tout fonctionne comme expecten dans Firefox, Opera, Safari et Chrome, mais pas IE7

Toutes les idées ce qui se passe ici?

Btw. utiliser WebObjects WOCookie pour créer le cookie.

+0

Vous connectez-vous au serveur de développement par adresse IP ou par nom d'hôte? –

Répondre

9

Le cookie dans votre exemple est pour le domaine "us.is". IE ignore les cookies définis pour les domaines à deux lettres. Pour être plus précis, il semble ignorer les cookies des domaines de moins de 5 caractères (comme le vôtre: 2 + 2). Je me souviens de ce bug/fonctionnalité de IE6 je crois, peut-être des versions antérieures. En lisant ceci, il semble que le comportement soit toujours présent dans IE7.

Un article MSKB suggérant une solution de contournement peu pratique peut être trouvé ici: http://support.microsoft.com/kb/310676. Plus pratique est peut-être d'obtenir un nom de domaine plus long ;-) ou de vous assurer que les utilisateurs sont toujours redirigés vers un nom canonique, c'est-à-dire "www.us.is" et y planter vos cookies.

+0

J'ai supposé qu'il y aurait une question à propos de IE et des domaines à deux lettres sur S.O. déjà, mais dans ce cas, je n'ai pas pu le trouver. – conny

+0

Oui c'est à cause du bug IE .. très bien :) Et la solution de contournement proposée par MS ne fonctionne pas. Nous avons résolu ce problème en définissant Firefox comme navigateur par défaut. Heureusement, nos applications sont destinées à un usage interne :) –

6

Quelques cas/détails de bord supplémentaires (des tests effectués dans IE8 à l'aide du site Actions de confidentialité par [Options Internet> Confidentialité> Sites]):

Les domaines suivants sont REJETÉE:

a.a 
aa.a 
    a.aa 
aa.aa 

avec le message d'erreur:

You have entered an invalid domain. Domains must be in the Internet zone 
and must use the HTTP or HTTPS protocol. URLs beginning with xn-- must 
be valid IDN names. 

Examples of valid domains: 

    - www.treyresearch.net 
    - http://treyresearch.net 
    - fineartschool.net 

les domaines suivants sont ACCEPTÉ:

aaa.a 
aaa.aa 
    a.aaa 
aa.aaa 

    a.a.a 
    a.a.aa 
a.aa.aa 
aa.aa.aa 

En outre, et en grande partie sans rapport, Internet Explorer semble refuser d'accepter les domaines qui contiennent des caractères non autorisés dans le cahier des charges pour les domaines. Si (dans un environnement de développement, probablement), vous avez un domaine invalide, IE ne l'aime pas.

Les domaines suivants sont REJETER:

a_a.aa 
a%a.aa 
a*a.aa 
a=a.aa 

avec le message d'erreur: The site name you entered is not a valid IDN URL.

Le test semble se limiter à la validité du caractère et non Arrangment validité, parce que les domaines suivants sont ACCEPTÉ:

aa-.aa 
aa.aaa. 
---.aa 
-.--- 
---.- 

Hope this aide les gens à la recherche de détails pourquoi les cookies ne sont pas correctement définis dans IE7/IE8 dans un environnement par rapport à un autre.

+1

Merci beaucoup pour cette réponse. J'ai eu le problème pendant plus d'une semaine avec IE9. Dans mon cas, c'était le trait de soulignement dans mon sous-sous-domaine. – ownking