Error de CakePHP: no se puede configurar la sesión, no se pudo configurar session.auto_start
cakephp-2.2 (5)
Estoy recibiendo este error:
Error: [CakeSessionException] Unable to configure the session, setting session.auto_start failed.
Estoy usando Cakephp 2.2.4.
EDITAR
Parece que este tipo tuvo el mismo problema: Cakephp Error de sesión en el sitio en vivo y al usar este
if(!isset($_SESSION)) session_start();
Dentro del método antes del AppController
de AppController
corrige el error.
Así que mi pregunta es: ¿por qué sucedió esto? Todo funcionaba bien y de repente apareció este error. Además, me he dado cuenta de que la carpeta app/tmp/sessions
está vacía y configuré la sesión para que sea manejada por Cake (en Config/core.php
).
Como dice la respuesta de Andriy , debes actualizar CakePHP o degradar PHP. Sin embargo, si no quiere o no tiene la opción de hacerlo, debe reconfigurar su sesión de Cake para que use sesiones de PHP estándar en lugar de la sesión de Cake.
app / Config / core.php
Configure::write(''Session'', array(
''defaults'' => ''cake'', // You need to change the value of this to ''php''
''timeout'' => 120,
''cookieTimeout'' => 20160,
''checkAgent'' => false
));
Como no tengo suficiente reputación para comentar, agrego la siguiente respuesta además de la de Simon:
para hacerlo funcionar, tuve que comentar las tres ocurrencias de ''session.auto_start'' => 0 (alrededor y después de la línea 557 en CakeSession.php)
Para obtener más información, consulte el siguiente parche del equipo de CakePHP: https://github.com/cakephp/cakephp/commit/faa2cbd3c3fc1bbf83064727847789123110b8e3#diff-bd8dc176fa0f41743dbaafa75f77b5ae
En la versión 5.4.19 de PHP, los desarrolladores cerraron la capacidad de configurar la opción session.auto_start desde el script del usuario.
CakePHP eliminó esta opción de la configuración de sesión predeterminada solo en la versión 2.4.0.
Así que tienes 3 opciones principales: actualizar CakePHP, degradar PHP o usar una sesión de php estándar.
En su archivo php.ini, intente configurar session.auto_start
en 1.
La respuesta de Andriy Struk es correcta. Dijo: Así que tienes 3 opciones principales: actualizar CakePHP, bajar de categoría de PHP o usar sesiones estándar de PHP.
Pero hay una cuarta opción , simplemente puede comentar una sola línea en /lib/Cake/Model/Datasource/CakeSession.php
(alrededor de la línea 557):
// ''session.auto_start'' => 0,
Eso detiene a Cake llamando a ini_set()
en esa configuración, y evita el error fatal.