
No me funcionan las sesiones PHP en el servidor
Publicado por LumAuro (7 intervenciones) el 16/09/2017 01:46:02
Hola a todos,
He buscado información que me ayude con este caso en particular, pero no he dado con la causa del problema...
Tengo un sitio de uso personal en un alojamiento gratuito y hasta hace poco todo funcionaba correctamente, pero de un tiempo para acá no se guardan las cookies de sesión en el navegador (todos aparentemente) y no he logrado encontrar la causa del problema.
Lo más obvio era revisar las restricciones de cookies en el navegador pero no hay ninguna, incluso lo configuré para permitir expresamente la url del sitio web sin éxito.
Luego probé en otros navegadores así como en otros PC y dispositivos móviles (tablets y smartphones) y en todos se mantiene el mismo problema, por lo que concluí que podría ser el servidor.
Para aislar el problema creé un archivo de prueba 'probarsesion.php' en el servidor con el siguiente código:
No podía ser más simple. Si la sesión se guardaba el SID (primera linea visible en el navegador) debía ser el mismo entre llamadas, y la siguiente línea debía simplemente mostrar la variable de sesión 'validar' con su valor 'OK' de la segunda llamada en adelante (lógico ¿no?)
¡ Tampoco funcionó !
subí el mismo código a otro servidor y funcionó tal como se esperaba, lo que me confirma que el problema está en el servidor, pero... ¿porqué?
Lo único que me ha llamado la atención es que ese servidor en particular usa PHP versión 7.1.7 mientras el otro (dónde funcionó) está en la versión 7.0.19, pero no estoy muy seguro si eso tiene alguna relación aunque en el sitio de PHP no se refieren conflictos de compatibilidad, de todas formas sí hay cambios en las variables de configuración entre versiones.
También he revisado los archivos de sesión en el servidor y efectivamente existen para cada SID que se ha creado, aunque no estoy seguro de que guarden información en sí mismos porque no parecen contener datos; en realidad no he encontrado documentación de dónde se guardan las variables de sesión (siempre supuse que en el archivo).
Ya no encuentro que más revisar, cualquier orientación la agradezco; ¿alguna sugerencia?
Dejo también los enlaces de los sitios publicados para que podáis probarlo vosotros mismos, y si de casualidad a alguno le funciona correctamente sin modificaciones le ruego que me cuente en cual navegador, versión y cual configuración podría estar haciéndolo funcionar, aunque debería funcionar sin problemas en cualquiera salvo que la cookies estén restringidas; como os dije he probado en varios nevegadores, equipos de escritorio y dispositivos siempre con el mismo resultado (tengo uno que aún conserva la cookie del SID que funcionaba anteriormente y en ese en particular no cambia el SID pero tampoco guarda la variable de sesión entre lllamadas):
http://diariobebe.site50.net/probarsesion.php ... el del problema
http://abogadolm.4sql.net ... el de control (que funciona según lo esperado)
Gracias.
He buscado información que me ayude con este caso en particular, pero no he dado con la causa del problema...
Tengo un sitio de uso personal en un alojamiento gratuito y hasta hace poco todo funcionaba correctamente, pero de un tiempo para acá no se guardan las cookies de sesión en el navegador (todos aparentemente) y no he logrado encontrar la causa del problema.
Lo más obvio era revisar las restricciones de cookies en el navegador pero no hay ninguna, incluso lo configuré para permitir expresamente la url del sitio web sin éxito.
Luego probé en otros navegadores así como en otros PC y dispositivos móviles (tablets y smartphones) y en todos se mantiene el mismo problema, por lo que concluí que podría ser el servidor.
Para aislar el problema creé un archivo de prueba 'probarsesion.php' en el servidor con el siguiente código:
1
2
3
4
5
6
7
<?php
session_start();
echo session_id()."<hr/>";
print_r($_SESSION);
$_SESSION['validar'] = "OK";
echo '<hr/><a href="">Recargar</a><hr/>';
?>
No podía ser más simple. Si la sesión se guardaba el SID (primera linea visible en el navegador) debía ser el mismo entre llamadas, y la siguiente línea debía simplemente mostrar la variable de sesión 'validar' con su valor 'OK' de la segunda llamada en adelante (lógico ¿no?)
¡ Tampoco funcionó !
subí el mismo código a otro servidor y funcionó tal como se esperaba, lo que me confirma que el problema está en el servidor, pero... ¿porqué?
Lo único que me ha llamado la atención es que ese servidor en particular usa PHP versión 7.1.7 mientras el otro (dónde funcionó) está en la versión 7.0.19, pero no estoy muy seguro si eso tiene alguna relación aunque en el sitio de PHP no se refieren conflictos de compatibilidad, de todas formas sí hay cambios en las variables de configuración entre versiones.
También he revisado los archivos de sesión en el servidor y efectivamente existen para cada SID que se ha creado, aunque no estoy seguro de que guarden información en sí mismos porque no parecen contener datos; en realidad no he encontrado documentación de dónde se guardan las variables de sesión (siempre supuse que en el archivo).
Ya no encuentro que más revisar, cualquier orientación la agradezco; ¿alguna sugerencia?
Dejo también los enlaces de los sitios publicados para que podáis probarlo vosotros mismos, y si de casualidad a alguno le funciona correctamente sin modificaciones le ruego que me cuente en cual navegador, versión y cual configuración podría estar haciéndolo funcionar, aunque debería funcionar sin problemas en cualquiera salvo que la cookies estén restringidas; como os dije he probado en varios nevegadores, equipos de escritorio y dispositivos siempre con el mismo resultado (tengo uno que aún conserva la cookie del SID que funcionaba anteriormente y en ese en particular no cambia el SID pero tampoco guarda la variable de sesión entre lllamadas):
http://diariobebe.site50.net/probarsesion.php ... el del problema
http://abogadolm.4sql.net ... el de control (que funciona según lo esperado)
Gracias.
Valora esta pregunta


0