Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Cómo hacer que las sesiones PHP permanezcan activas en todos los subdominios

13 de marzo de 2009

En mis aplicaciones web PHP utilizo sesiones para guardar toda la información del usuario. No uso cookies salvo la cookie que contiene el id de la sesión.

El problema es que cuando el usuario visita su perfil se desconecta del sitio porque se encuentra en un subdominio (perfil.ejemplo.com) en vez de en el dominio principal del sitio (ejemplo.com).

Así que la pregunta es si existe alguna manera de que las sesiones PHP permanezcan activas para cualquier subdominio del sitio (*.ejemplo.com).


Estás leyendo una traducción autorizada de la pregunta Allow php sessions to carry over to subdomains planteada por Anthony en StackOverflow.


Respuestas

#1

Estas son las cuatro posibles soluciones a este problema. Te aconsejo que las pruebes en orden y te quedes con la primera que te funcione (no tienes que utilizarlas todas a la vez):

1. Añade lo siguiente en tu archivo php.ini y reinicia el servidor web:

session.cookie_domain = ".ejemplo.com"

2. Añade lo siguiente en el archivo .htaccess de tu proyecto:

php_value session.cookie_domain .ejemplo.com

3. Añade la siguiente instrucción en tu aplicación PHP antes de la instrucción session_start():

ini_set('session.cookie_domain', '.ejemplo.com');

4. Añade la siguiente instrucción en tu aplicación PHP antes de la instrucción session_start():

session_set_cookie_params(0, '/', 'ejemplo.com', false, false);

@librosweb

20 septiembre 2014, 20:54