2011-01-18 11 views
5

Las sesiones funcionan perfectamente en todos los demás navegadores que he probado.Las sesiones de Django no funcionan en Internet Explorer

Si trato de obtener el identificador de sesión con sessionid = request.COOKIES['sessionid'], me sale este error: KeyError: 'sessionid'

Esto es lo que tengo en mi settings.py:

CACHE_BACKEND = 'memcached://127.0.0.1:11211/' 
SESSION_COOKIE_DOMAIN = '.vb.is' 
SESSION_ENGINE = 'django.contrib.sessions.backends.cache' 

sitios son vb.is, fiskifrettir .vb.is y hestabladid.vb.is

configuración

alt text

servidor es: apache2 (mod_wsgi) y nginx

+0

¿Están habilitadas las cookies en ese navegador? –

+0

Sí, nadie puede iniciar sesión con IE. – demux

+0

Ejecute esto: print request.session.session_key. Y observe si el sessionid está definido o no. – zsong

Respuesta

4

Configurar una cookie en XX.XX no funcionará en general. Ver Q # 6 aquí: http://blogs.msdn.com/b/ieinternals/archive/2009/08/20/wininet-ie-cookie-internals-faq.aspx y ver http://blogs.msdn.com/b/ieinternals/archive/2009/09/19/private-domain-names-and-public-suffixes-in-internet-explorer.aspx.

Puede evitar el problema configurando la cookie con domain = WWW.vb.is en su lugar.

+0

Supongo que eso es para evitar que los sitios configuren cookies para ".co.uk" y gustos. –

+0

configurar la cookie para www.vb.is no será de ayuda, ya que necesito acceder a esa cookie de secure.vb.is para que mi configuración actual funcione. Entonces, lo que estás diciendo es que simplemente no puedo tener sesiones persistentes entre dominios ... – demux