Foros del Web » Programando para Internet » PHP »

Sólo guarda sesiones en localhost

Estas en el tema de Sólo guarda sesiones en localhost en el foro de PHP en Foros del Web. Buenas, pues como reza el título del post me encuentro con que sólo me guarda sesiones en localhost. Si en vez de acceder por http://localhost ...
  #1 (permalink)  
Antiguo 01/09/2005, 12:33
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
Sólo guarda sesiones en localhost

Buenas,

pues como reza el título del post me encuentro con que sólo me guarda sesiones en localhost. Si en vez de acceder por http://localhost accedo por http://nombreCompu todo funciona ok salvo que las sesiones no existen

¿por qué?
  #2 (permalink)  
Antiguo 01/09/2005, 12:39
Avatar de Ledita  
Fecha de Ingreso: agosto-2005
Mensajes: 54
Antigüedad: 18 años, 8 meses
Puntos: 0
Verifica la seguridad contra cookies que utilizan las computadoras desde donde vas a acceder a tu programa
  #3 (permalink)  
Antiguo 01/09/2005, 12:43
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
Hola Ledita, gracias por responder

Ahí está el tema, que me lo hace desde la misma computadora y la misma ventana de navegador.
  #4 (permalink)  
Antiguo 02/09/2005, 03:23
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
De momento lo he solucionado usando el SID pero igual me gustaría saber por qué sucede esto.

Explicoteo un poco más a fondo el asunto a ver si alguien me puede arrojar un poco de luz ....

página de http://localhost/login.php:

Recoge user y pass, averigua si está todo ok y en caso afirmativo inicia una sesión y redirecciona a http://localhost/usuario_panel.php.

usuario_panel.php verifica que la sesión esté iniciada. En caso de no estarlo redirige a usuario_login.php con el form para introducir los datos que llevan a login.php. En caso de estar la sesión iniciada se queda en http://localhost/usuario_panel.php.

Vamos, lo típico de cualquier autentificación de usuario para entrar en su área restringida.

Hasta ahí todo ok. Ahora bien, cierro sesión y accedo a http://nombreComputadora/usuario_login.php, de ahí a login.php, crea la sesión (lo puedo comprobar en los temporales de php) redirecciona a usuario_panel.php donde no encuentra la sesión y redirige de nuevo a usuario_login.php.

¿por qué sucede este fenómeno? con localhost sabe encontrar las sesiones pero no con el nombre de la compu.

Ahora usando el SID funciona de ambas formas pero me gustaría saber por qué... por qué... por qué..porquéporquéporqué

Y yá que estamos pregunto otra cosa:

He visto en las faq esto

Cita:
Para no tener que programar manualmente el PHPSESID en nuestros script y no preocuparnos por que el cliente no acepte las cookies de nuesta session deberemos tener en nuestro php.ini las siguientes directivas activadas (1) o descativadas (0)

session.use_cookies=0
session.use_trans_sid=1
http://www.forosdelweb.com/showthread.php?postid=321543

Mi pregunta es ... ¿es obligado poner el uso de cookies para las sesiones a 0 si ponemos el trans_id a 1? ¿va a explotar algo si dejo ambos valores a 1?

Gracias si me has leido hasta aquí y si no, pues también.

Un saludo
  #5 (permalink)  
Antiguo 02/09/2005, 03:52
 
Fecha de Ingreso: diciembre-2004
Mensajes: 120
Antigüedad: 19 años, 4 meses
Puntos: 0
Hola.
Por defecto, tanto session.use_cookies como session.use_trans_sid suelen venir a 1. lo raro es que no los tengas así.
La razón de poner el use_cookies a 0 es para obviar totalmente su uso (tampoco lo necesitas si vas a controlar el SID por URL), pero se supone que no interfiere.

Sobre porque usando el nombredecomputadora no lo hace bien... no lo sé, pero si quieres prueba lo siguiente, a ver :
En hhtpd.conf tienes pon servername nombrecomputadora (por defecto viene servername localhost) y en hosts por 127.0.0.1 nombrecomputadora (además de 127.0.0.1 localhost, sin borrar la entrada de localhost, eh)
  #6 (permalink)  
Antiguo 02/09/2005, 04:15
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
Gracias Flopi por arrojar algo de luz

Debo declararme culpable de no haber aportado todos los datos suficientes pues omití agregar que estoy usando php 4.3.7 con un IIS 5.0 bajo win2000server.

Como no encuentro el hhtpd.conf que mencionas calculo que es porque ese archivoes utilizado por Apache (si no recuerdo mal) y no tengo ni idea de cómo mirar el equivalente en el IIS

Algo curioso que he observado es que usando el nombreComputadora en mis últimas pruebas y tras cerrar sesión y volver a iniciarla en varias ocasiones de golpe yá no me escribe el SID en la url pero sin embargo sí está encontrando las sesiones

...estoy comenzando a plantearme el hacerle un exorcismo a mi computadora
  #7 (permalink)  
Antiguo 02/09/2005, 05:06
 
Fecha de Ingreso: diciembre-2004
Mensajes: 120
Antigüedad: 19 años, 4 meses
Puntos: 0
Si, es un archivo de Apache...
En IIS no me acuerdo muy bien, pero creo que estaba en las propiedades del sitio web, en las opciones avanzadas de identificación del sitio web o algo así. No tengo un IIS para comprobarlo, asi que no me hagas mucho caso
  #8 (permalink)  
Antiguo 02/09/2005, 05:16
Avatar de yoseman  
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 20 años, 4 meses
Puntos: 5
Cita:
Iniciado por tunait
Mi pregunta es ... ¿es obligado poner el uso de cookies para las sesiones a 0 si ponemos el trans_id a 1? ¿va a explotar algo si dejo ambos valores a 1?

Gracias si me has leido hasta aquí y si no, pues también.

Un saludo
Yo creo que el asunto puede depender tb de esta directiva: session.use_only_cookies

Porque si está a 1, el identificador de sesión se propagará únicamente por cookies independientemente de que el cliente las tenga o no activadas. Yo creo que debe estar así:

session.use_only_cookies = 0
session.use_trans_sid = 1
session.use_cookies = 1


Salu2 ;)
__________________
[+]
[+]
  #9 (permalink)  
Antiguo 02/09/2005, 05:29
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
Cita:
Iniciado por yoseman
Yo creo que el asunto puede depender tb de esta directiva: session.use_only_cookies

Porque si está a 1, el identificador de sesión se propagará únicamente por cookies independientemente de que el cliente las tenga o no activadas. Yo creo que debe estar así:

session.use_only_cookies = 0
session.use_trans_sid = 1
session.use_cookies = 1


Salu2 ;)
Hola yoseman

No, session.use_only_cookies quedó a 0, tal y como estaba inicialmente.

De entrada estaban así

session.use_cookies = 1
session.use_only_cookies = 0
session.use_trans_sid = 0

Cambié el trans_id a 1 nada más.

Igual por si las moscas acabo de mirar en info.php y me muestra igual los valores

session.use_cookies On
session.use_only_cookies Off
session.use_trans_sid On

Lo extraño es lo que está haciendo ahora que comentaba unos mensajes más arriba
Cita:
Algo curioso que he observado es que usando el nombreComputadora en mis últimas pruebas y tras cerrar sesión y volver a iniciarla en varias ocasiones de golpe yá no me escribe el SID en la url pero sin embargo sí está encontrando las sesiones
¿Será que no escribe el SID porque lo está encontrando en las cookies?

muchas gracias por tu ayuda
  #10 (permalink)  
Antiguo 02/09/2005, 05:33
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 22 años, 7 meses
Puntos: 381
Cita:
Iniciado por Flopi
Si, es un archivo de Apache...
En IIS no me acuerdo muy bien, pero creo que estaba en las propiedades del sitio web, en las opciones avanzadas de identificación del sitio web o algo así. No tengo un IIS para comprobarlo, asi que no me hagas mucho caso
Yá me parecía que me sonaba de haber tocado ese archivo por Apache años á

He husmeado por las opciones que ofrecen las propiedades del sitio pero no he sabido encontrar algo parecido.

También he paseado directamente por las propiedades del servidor y tampoco he sabido dilucidar si podía ser algo de por ahí.

Igual, no te preocupes que entonces yá sería pregunta para el foro de IIS, si acaso en un rato preguntaré por allá.

Muchas gracias
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 02:32.