Foros del Web » Programando para Internet » PHP »

Mantener sesiones entre URL's

Estas en el tema de Mantener sesiones entre URL's en el foro de PHP en Foros del Web. Saludos. Foros del Web - PHP (Antes que nada, moderadores, si ya hay un hilo con una consulta parecida, por favor, siéntanse en libertad de ...
  #1 (permalink)  
Antiguo 26/05/2010, 05:44
 
Fecha de Ingreso: mayo-2010
Ubicación: Cabudre - Lara - Venezuela
Mensajes: 7
Antigüedad: 13 años, 11 meses
Puntos: 0
Exclamación Mantener sesiones entre URL's

Saludos.
Foros del Web - PHP

(Antes que nada, moderadores, si ya hay un hilo con una consulta parecida, por favor, siéntanse en libertad de eliminar este y remitirme al hilo que hable de este tema)


Tengo un sitio que trabaja con sesiones y todo está funcionando bien. El método que estoy utilizando es el siguiente:

En todos los archivos .PHP del sitio, luego del session_start() hay una instrucción include_once("login.php").

El archvio login.php:
.- Usa el método _POST y action="user.php"
.- Si isset($_SESSION["Login"]) = FALSE entonces muestra los campos de Log/Pass y el botón Submit - "Iniciar sesión".
.- Si isset($_SESSION["Login"]) = TRUE entonces inicializa un hidden con Logout = 1, muestra el nombre del usuario y el botón Submit - "Desconectar sesión".


El archivo user.php

Si recibe Log/Pass
.- Recibe Log/Pass por _POST y hace la búsqueda en la base de datos.
.- Si Log/Pass es TRUE inicializa $_SESSION["Login"]

Si recibe Logout = 1
session_unset();
session_destroy();


Repito: TODO está funcionando bien.


Decidí comprar un Certificado SSL para que cuando los usuarios entren con Login/Password (Log/Pass) su información esté protegida por el certificado, y allí comenzaron los problemas.

Para quien haya utilizado un Certificado SSL (y para quien no lo ha hecho), este certificado "asegura" un dominio (o un subdominio) y no los archivos.

Como no quiero que www.misitio.com.ve esté afectado TODO por el Certificado, creé un subdominio secure.misitio.com.ve y este subdominio SI está protegido.

Como saben, un subdominio es una carpeta dentro del public_html, pero si redirecciono mi action="secure/user.php" NO SE ACTIVA EL CERTIFICADO.

Para que el certificado se active tengo que hacer el action="https://secure.misitio.com.ve/user.php".

Debido a que es un _POST, el archivo user.php recibe las variables, verifica los datos y cre las variables de sesión. Al momento de devolver el control a la página desde donde lo recibimos, NO MANTIENE LA SESION.

Es natural que suceda porque estoy intentando transferir la sesión ENTRE DOMINIOS. Y allí es donde requiero su ayuda.

He intentado pasar el session_id por _POST desde el login.php al user.php y el user.php lo recibe, pero no lo devuelve.

He intentado también cambiar los parámetros de las cookies, colocar un nombre de sesion con session_name() y nada. No devuelve la sesión después de haber verificado los datos.

Mientras estuve trabajando enviando el action"secure/user.php" desde login.php todo estuvo bien. Al cambiar de dominio comenzó a fallar.

¿Cómo puedo hacer que el user.php (que recibe el session_id, pero no la sesión iniciada antes de login.php) pueda crear una sesión y devolverla ENTRE DOMINIOS, es decir, entre el dominio http: y el https: ?


Agradezco su asistencia.

Última edición por GatorV; 26/05/2010 a las 08:52
  #2 (permalink)  
Antiguo 26/05/2010, 06:45
Avatar de Netfrank  
Fecha de Ingreso: marzo-2006
Ubicación: Las Talitas - Tucumán
Mensajes: 226
Antigüedad: 18 años, 1 mes
Puntos: 3
Respuesta: Mantener sesiones entre URL's

Por un lado, creo que sería mejor utilizar cookies.

Por otro lado, puedes utilizar un "enlace" entre ambos dominios. Si el usuario viene de un http a un https, se ejecuta el código, y si no recibe la sesión, crea una nueva sesión con los datos anteriores, o viceversa.

Saludos.
__________________
-- Franco D. Ocaranza
-- [email protected]
-- http://www.jmqv.com.ar/
  #3 (permalink)  
Antiguo 26/05/2010, 08:54
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Mantener sesiones entre URL's

Tienes que cambiar los parámetros de tu cookie, lee el Manual al respecto: session_set_cookie_params

Etiquetas: seguridad, sesiones, ssl, certificados
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 18:16.