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. 
   
 



