Foros del Web » Programando para Internet » PHP »

configuracion php.ini y sesiones

Estas en el tema de configuracion php.ini y sesiones en el foro de PHP en Foros del Web. Hola. Tengo un pequeño VPS con unas cuantas páginas hechas por un par de desarrolladores además de alguna hecha por mi. Este servidor ha sufrido ...
  #1 (permalink)  
Antiguo 07/05/2013, 09:22
 
Fecha de Ingreso: octubre-2008
Mensajes: 2
Antigüedad: 15 años, 5 meses
Puntos: 0
configuracion php.ini y sesiones

Hola.

Tengo un pequeño VPS con unas cuantas páginas hechas por un par de desarrolladores además de alguna hecha por mi. Este servidor ha sufrido una caida por haber usado toda la cuota de inodos de disco. Al parecer había más de 60000 archivos de sesión, así que una vez borrados desde el hosting me han pedido que revise la programación PHP para que se borren esos archivos.

He revisado las páginas que hacen uso de sesión PHP:
- Todas las páginas inician session_start() y van guardando o leyendo datos según necesiten. No veo nada que modifique la configuración de php.ini para estos menesteres.
- Hay una que hace un session_destroy() al final. Si no he entendido mal el manual esta función no destruye la cookie, solo los datos que contiene.
- Después de hablar con uno de los programadores PHP, el ha añadido esto en su página: session_set_cookie_params(0, '/', '.'.$config['host'].'.'.WHICHLANG); y session_cache_limiter(false); También cambió la configuración php.ini para su dominio (la he puesto más abajo)

No tengo acceso SSH así que no puedo acceder a /var/lib/php/session.

Esta es la configuración de php.ini para el dominio que comentaba antes. El resto de dominios tiene la configuración global del servidor (columna de la derecha)

session.auto_start Off Off
session.bug_compat_42 Off Off
session.bug_compat_warn Off Off
session.cache_expire 180 180
session.cache_limiter no value nocache
session.cookie_domain http://www.ELDOMINIOXX.com no value
session.cookie_httponly Off Off
session.cookie_lifetime 7200 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_divisor 1000 1000
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 5 5
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path /var/lib/php/session /var/lib/php/session
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies On On
session.use_trans_sid 0 0

He estado leyendo un poco y no tengo nada claro el tema. Se supone que PHP tiene un Garbage Colector que se encarga de borrar todos los archivos cada cierto tiempo así que no debería hacer falta hacer nada en la programación PHP.
Pero esto contradice lo que me dicen los técnicos del hosting. ¿La culpa es de la programación PHP o de la configuración del servidor?

Perdonad el tocho y grácias adelantadas por la ayuda.

Un saludo.
  #2 (permalink)  
Antiguo 08/05/2013, 01:05
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: configuracion php.ini y sesiones

Al parecer había más de 60000 archivos de sesión, así que una vez borrados desde el hosting me han pedido que revise la programación PHP si borras los archivos de session, destruyes las sessiones que estén en curso actualmente. Si estás utilizando el handler standard de sessiones entonces no deberías tener este problema. Puedes comprobar dos cosas:
1. Qué significa la linea de código que tu programador ha agregado
2. Que el sitio es seguro y que no se pueden crear sessiones por otros medios que no sean los que el sitio ofrece

Salu2
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 08/05/2013, 01:50
 
Fecha de Ingreso: octubre-2008
Mensajes: 2
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: configuracion php.ini y sesiones

Grácias por responder!

El borrar todas las sesiones fué una medida de emergencia dado que el servidor estaba bloqueado.

session_set_cookie_params(): el primer parámetro es el tiempo de vida de la cookie de sesión.
De session_cache_limiter(false) no entiendo el "false" que ha puesto, en la referencia veo que los parámetros que acepta son "public, private_no_expire, private y nocache).
Todo esto la añadió el programador después para intentar arreglar el problema.

Que el sitio es seguro y que no se pueden crear sessiones por otros medios que no sean los que el sitio ofrece
Como digo al abrir el hilo, he revisado todas las páginas y las que usan sesiones lo hacen con session_start().
¿Cuales otras formas hay de abrir sesión?¿está mal la configuración del servidor?

Un saludo.

Etiquetas: sesiones
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 16:03.