Ver Mensaje Individual
  #16 (permalink)  
Antiguo 15/03/2005, 12:17
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Según esto .. el SID lo propagas el COOKIES .. por eso "ni conocías" de su existencia ..

session.use_cookies On On

No sé si ya a estas alturas ya conoces que hace el SID .. pero en su base (te comento) es el Identificador único de sesión .. es el que guarda la relación entre el "cliente" y el "servidor" (y sus datos particulares que usa que són únicos para el que lo inicia). Por eso ese "SID" es único y de alguna forma "aleatorio" .. no es un n° secuencial .. así podríamos retomar una sesión en otro cliente comodamente.

El SID es necesario que se propague entre el cliente y el servidor para que en todo momento "PHP" sepa que "datos" ha de entregarle al cliente que los pide y cuales son. Ese SID puedes dejar a PHP que cree una cookie y el la lea automáticamente. Por supuesto .. si esa cookie no se crea .. el SID no existirá y se perderá ese "enlace" entre el cliente y el servidor .. pese que los datos puedan seguir activos en el servidor .. el "nombre" por el cual "recuperarlos" no los tendrás ya.

También puedes propagar el SID en el URL .. como una variable más que añadir a todas las que uses tu en tu aplicación .. Pero eso implica que lo tendrás que hacer "a mano" en todo link que hagas .. en todo redireccionamiento (javascript o vía PHP) .. etc. Pero .. PHP tiene la directiva session.use_trans_sid .. que si está a ON automáticamente "reescribe" ciertos tags de HTML (como los que se indican en url_rewrite_tags) para añadir esa variable más que propagar el SID .. Pero, esto no lo hace en algunos casos .. como en redireccionamientos javascript o en header("Location ...") y algunos casos más.


Esto sería como funciona el dichoso "SID" que es la Base de todo esto de las sesiones. .. Si tienes problemas con el .. lo primero es "verlo" y ver que sucede con el según interactuas con tu aplicación o cuando "saltas" a la otra aplicación. Para eso tienes funciones como: session_id() para verlo .. Puedes hacer "echo" en scripts de una aplicación y de otra .. tomarte nota de dicho dato y verificar si al usar una u otra aplicación según tus condiciones de pruebas es el mismo SID o es diferente ..

En principio por lo que mencionas .. de alguna forma está usando el mismo al parecer. Así se podría ir evaluando que o por donde ver .. También sería bueno propagar el SID a mano por el URL (o automático por parte de PHP pero siempre por el URL) .. desactivar el uso de cookies para la propagación del SID (lo puedes hacer con ini_set() . hay una FAQ que menciona como usarlo) y así evaluar si es problema de cookies o de otro ambito.

Un saludo,