Tengo un problema algo extraño con el inicio de sesión, el problema es el siguiente:
Tengo la direccion http://prueba.com y http://privado.prueba.com, ambos estan usando el mismo conjunto de archivos y distintas bases de datos. El problema radica en que un usuario que paso primero por http://prueba.com y luego va a http://privado.prueba.com, cuando ingresa su nombre de usuario y pass, el sistema no lo reconoce como usuario, tampoco le dice que estan mal los datos de ingreso. Si el usuario elimina las cookies de su sistema y lo vuelve a intentar (pero sin pasar por http://prueba.com), puede entrar sin ningun problema.
Revisando la tabla de sesion, parece estar todo bien, salvo lo siguiente:
Cuando el usuario pasa por http://prueba.com, se genera un ingreso en la tabla session de ese dominio, de la siguiente caracteristica:
uid sid hostname timestamp cache session
0 a0b2f7a3118e3ad8a4a21473124100a8 140.191.4.92 1164191951 0
Cuando pasa a http://privado.prueba.com , se genera un ingreso en la tabla session de ese dominio, de la siguiente caracteristica:
uid sid hostname timestamp cache session
0 a0b2f7a3118e3ad8a4a21473124100a8 140.191.4.92 1164192942 0
(Hasta aca todo es como debe ser, pero cuando el usuario hace el intento de ingreso sucede lo siguiente:
uid sid hostname timestamp cache session
1 a0b2f7a3118e3ad8a4a21473124100a8 140.191.4.92 1164192945 0
0 a60a87f00a2d87bf212bffc6005974af 140.191.4.92 1164192946 0
Cosa extraña, el sistema sí valida al usuario, pero cambia su sid y por esta razón no lo reconoce, voy a seguir investigando, pero si alguien sabe que sucede o sabe la solución, se lo voy a agradecer. Bye!
Al parecer es un problema conocido
Hace varias semanas también tuve un problema similar (no le hice un seguimiento como el que tienes tu, pero tenía problemas con el login) y me puse a buscar información en drupal.com, encontrando que había muchas personas que han tenido este tipo de problemas, y al parecer los motivos podían ser muy diversos.
En las FAQ de drupal.org
http://drupal.org/Troubleshooting-FAQ
hay una entrada que habla de un problema que coincide con el que mencionas; aunque sigue sin mencionar aspectos técnicos y que más bien es un problema difícil de entender:
http://drupal.org/node/77106
Dicen que para la próxima versión solucionarán el problema:
http://drupal.org/node/70521
Solución
Gracias a la gentil ayuda de un compañero de trabajo, la solución es la siguiente:
El problema se genera porque el dominio "privado" encuentra 2 cookies válidas y toma la priemera. Cuando en realidad deberia tomar la segunda... Solución:
Especificar el nombre de la sesion en el settings.php:
<?phpini_set('session.name', 'PRIVADO');
?>
Bye!
Ooopsss ando atrasado
Gracias por el dato.
Saludos
Tambien es extraño
Es extraño tambien (al menos me parece a mí), que el sistema no coloca los datos en la tabla de sesion la primera vez que el usuario ingresa al sistema, sino que lo hace a la segunda. Raro no?, eso explica el porque a veces, no nos permite ingresar al primer intento, sino que debemos hacerlo otra vez, pero lamentablemente aun no explica lo de arriba. Bye!.