Foros del Web » Programando para Internet » PHP »

Compartir sessiones entre diferentes virtual host

Estas en el tema de Compartir sessiones entre diferentes virtual host en el foro de PHP en Foros del Web. Hola amigos, Tengo un problema y es que tengo que compartir sessiones entre diferentes virtual host. He encontrado una solucion que puede que me venga ...
  #1 (permalink)  
Antiguo 19/01/2013, 05:04
 
Fecha de Ingreso: diciembre-2010
Mensajes: 79
Antigüedad: 14 años
Puntos: 3
Compartir sessiones entre diferentes virtual host

Hola amigos,

Tengo un problema y es que tengo que compartir sessiones entre diferentes virtual host. He encontrado una solucion que puede que me venga bien pero no me funciona esta explicada aqui http://stackoverflow.com/questions/5...-virtual-hosts

Yo tengo un virtual host llamado por ejemplo VH1 y un virtual host llamado VH2

pues en vh1 tengo este script index3.php

Código PHP:
Ver original
  1. <?php
  2.  
  3.     session_start();
  4.     $sessionid = session_id();
  5.     var_dump($sessionid);
  6.    
  7.     $_SESSION['usuario']='pepe';
  8.     $redirectURL="http://vh2/prueba.php";    
  9.     Header("Location: $redirectURL?session=$sessionid");
  10.    
  11.     exit;
  12. ?>

ahora en vh2 tengo el script prueba.php

Código PHP:
Ver original
  1. <?php
  2.  
  3. session_id($_GET['session']);
  4. var_dump($_SESSION);
  5. var_dump($_SESSION['usuario']);
  6.  
  7. ?>

la salida es:

array
empty

null

La session id la tengo y la incorpora en la cookie y me va bien pero que tengo que hacer para poder obtener la session??

Hay otro camino para compartir session entre diferentes virtual host?

Supuestamente esta tecnica proviene de un ataque conocido como Session hijacking. Pero mi intencion no es hackear simplemente es usar esta tecnica para compartir sessiones de dos virtual host diferentes, pero soy incapaz de simularlo.

Gracias
  #2 (permalink)  
Antiguo 19/01/2013, 06:39
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años, 8 meses
Puntos: 270
Respuesta: Compartir sessiones entre diferentes virtual host

Esos dos virtual hosts son la misma máquina real? Cuál es el almacenamiento de sesiones?
  #3 (permalink)  
Antiguo 19/01/2013, 06:50
 
Fecha de Ingreso: diciembre-2010
Mensajes: 79
Antigüedad: 14 años
Puntos: 3
Respuesta: Compartir sessiones entre diferentes virtual host

1- Los dos virtual hosts son la misma maquina real.
2- El almacenamiento por sessiones es por defecto, 'files'
  #4 (permalink)  
Antiguo 19/01/2013, 12:33
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años, 7 meses
Puntos: 2135
Respuesta: Compartir sessiones entre diferentes virtual host

No es posible hacer eso, las sesiones son unicas por dominio, aunque esten en la misma maquina, son diferentes servidores para las cookies.
  #5 (permalink)  
Antiguo 19/01/2013, 13:02
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 7 meses
Puntos: 1517
Respuesta: Compartir sessiones entre diferentes virtual host

Lo que puedes hacer aparte que son compartidas como te indicaron, es que declares la sesión con array multidimensionales y cuando caduques solo haz un unset a la llave que pertenece esa sesión. Es decir

Código PHP:
Ver original
  1. $_SESSION['app1'] = ......
Y dentor de app1 es que colocas la sesiones de esa aplicación y para desloguearte usa unset para esa seión solamente.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 19/01/2013, 14:50
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años, 8 meses
Puntos: 270
Respuesta: Compartir sessiones entre diferentes virtual host

Para compartir la sesión, utiliza sesiones en base de datos, en vez de en files..Usa el id de sesion como key, y no tendrás problemas.

Etiquetas: apache, hack, security
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:12.