Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/05/2008, 05:38
HalHk
 
Fecha de Ingreso: enero-2008
Mensajes: 7
Antigüedad: 16 años, 3 meses
Puntos: 0
SID, propagacion de sesiones. Mis servers son anarquistas o algo :S

Hola a todos

No sé si este es el sitio correcto para postear esto ya que, a pesar de ser un tema de propagación de sesiones en PHP, creo que la culpa del problema es de apache, o del módulo de php para apache. En todo caso, llevo 2 días buscando el motivo, leyendo docs, y mirando en google y ya estoy algo desesperado, así que me he decidido a postear el problema. Perdón si el post es muy largo.

Estoy trabajando con 3 servidores, uno local y 2 dedicados que están por alemania comiendo kartofeln. En 2 de los 3 tengo el mismo problema.

Los servidores son estos:

1 - Gentoo con kernel 2.6.23-gentoo-r8
- Apache 2.2.8
- mod_suphp 0.6.2-r3
- PHP 5.2.5-r1

2.-Debian Etch kernel 2.6.22.9
-Apache 2.2.3-4+etch1
-libapache2-mod-php5 5.2.0-8+etch11
-PHP 5.2.0-8+etch11

3.- Debian Etch kernel 2.6.8-2-686-smp
- Apache 1.3
-PHP Version 4.4.4-8+etch4
-libapache-mod-php4 4.4.4-8+etch4



Bien, el caso es que el servidor "3" va perfectamente. Pero en los dos primeros, si en cualquier página pongo:

<?php session_start(); echo SID; ?>

-no me imprime absolutamente NADA. Sí imprime, en cambio, session_name() y session_id()
-Si hago en una shell un script prueba.php con el contenido <?php session_start(); echo SID; ?> y lo ejecuto en una shell (php ./prueba.php), por consola SI que me devuelve el PHPSESSID=xxxxxxx perfectamente.
-Ayer estaba haciendo unas cosillas con AJAX, y al encontrarme este problema intenté a ver si iba pasando la sesión por el url (session_name() . "=" . session_id()), pero el php que llamo con el script ignora la sesión completamente.

En el servidor "2" (el local) he probado a usar apache1.3, apache2, php4 y php5, todos con el mismo resultado.


He probado en el php.ini poner el trans_sid a 1, y con el use_cookies tanto en 0 como en 1, el resultado es el mismo.

Fuera de la impresión por pantalla del sid (y de su propagación, también tuve problemas cuando usaba un iframe en una de las páginas del sitio), las sesiones funcionan perfectamente. De hecho, de no haber estado probando esto del AJAX igual aún no me habría dado cuenta, pero claro, ahora necesito hacer algunas cosas en las que tendré que propagar el sid y me rompe bastante el hecho de que me ignore.

Alguien sabe a qué puede ser debido el problema. Agradecería cualquier idea, ya no sé donde más mirar.

Un saludo y muchísimas gracias.