tutorial español descargar php codeigniter codeigniter-2

php - tutorial - descargar codeigniter en español



¿Hay algún error conocido en la biblioteca de sesión de CodeIgniter 2.1.0? ¿Por qué me echan? (2)

Estoy trabajando en un sitio web creado con CodeIgniter 2.1.0.

A veces me he dado cuenta de que cuando recargo una página dos veces o abro un par de páginas muy rápido o cuando aparece un error en el código (estos errores no están relacionados con las sesiones) me desconecto.

Este sitio web está utilizando una biblioteca llamada Ion_authand para las identificaciones:

public function logged_in() { $identity = $this->ci->config->item(''identity'', ''ion_auth''); return (bool) $this->ci->session->userdata($identity); }

¿Hay algún error o algo que deba saber?

$config[''sess_cookie_name''] = ''cisession''; $config[''sess_expiration''] = 7200; $config[''sess_expire_on_close''] = TRUE; $config[''sess_encrypt_cookie''] = FALSE; $config[''sess_use_database''] = TRUE; $config[''sess_table_name''] = ''cisession''; $config[''sess_match_ip''] = FALSE; $config[''sess_match_useragent''] = TRUE; $config[''sess_time_to_update''] = 300;

En este sitio web, las sesiones se actualizan casi en cada página.


CodeIgniter guarda datos de sesión en cookies. Si los datos de sesión tienen algún carácter especial que desata la cookie, la sesión también se destruye.

También crea algunos problemas más de límite de tamaño. Cookie puede guardar un tamaño de datos limitado dependiendo del navegador. Si intenta almacenar más datos en una sesión de CodeIgniter, y como CodeIgniter intenta guardarlos en una cookie, es posible que no guarde más de ese límite.

Además, a medida que la cookie se envía a través de la red, agrega innecesariamente tráfico en la red. Todos los datos de la sesión no se deben guardar en la cookie.

Es mejor usar una biblioteca de sesión nativa. Utiliza la sesión nativa de PHP.

https://github.com/EllisLab/CodeIgniter/wiki/Native-session

o

https://github.com/EllisLab/CodeIgniter/wiki/PHPSession

Puedes comparar ambos.

Consulte la documentación de la sesión de CodeIgniter para ver cómo CodeIgniter almacena datos de sesión.

http://ellislab.com/codeigniter/user-guide/libraries/sessions.html


Esto es lo que encontré:

Hay un error en la biblioteca de sesión de CodeIgniter que destruye la sesión con solicitudes rápidas.

Aquí puedes encontrar más sobre este error:

https://github.com/EllisLab/CodeIgniter/issues/154

Este error todavía existe en la última versión estable que es 2.1.3.

Lo arreglé reemplazando mi biblioteca de sesiones con la de CI3-DEV de GitHub:

https://github.com/EllisLab/CodeIgniter/blob/b211adee89f5fd2192051e9c0826146bd150f469/system/libraries/Session.php

Y poniendo una larga sess_expiration y sess_time_to_update en mi configuración ... las mías son 86400 y 86500.