CakePHP Erreur: Impossible de configurer la session, session de réglage.auto_start échoué
J'obtiens cette erreur:
Error: [CakeSessionException] Unable to configure the session, setting session.auto_start failed.
Je suis en utilisant Cakephp 2.2.4.
MODIFIER
Il semble que ce gars avait le même problème: Cakephp erreur de Session sur le site en direct et à l'aide de cette
if(!isset($_SESSION)) session_start();
à l'intérieur de beforefilter
méthode de AppController
corriger l'erreur.
Donc ma question est: pourquoi c'est arrivé? Tout fonctionnait bien, et puis tout à coup cette erreur est apparu.
De plus, j'ai réalisé que le dossier app/tmp/sessions
est vide et j'ai configuré la session à être manipulés par le Gâteau (en Config/core.php
).
- A cette ainsi de nulle part. La mise à jour à la dernière version de Gâteau fixe, on dirait qu'elles ont pu faire un peu de travail sur le paramètre de session...
- Ok, je vais essayer
- Quelle version?
- la dernière (2.4.2 en ce moment)
- Merci pour cette réponse, j'ai gâteau qui redirige vers lui-même sans s'arrêter et navigateur rupture de la connexion de toute évidence. Fort heureusement, grâce à de nombreux exit('ciao'); à partir de index.php je trouve que le code de pause après l'appel à la session d'écrire, parce que j'ai changer la version de PHP sur le serveur.
Vous devez vous connecter pour publier un commentaire.
Dans la version de PHP 5.4.19 - développeurs fermé la possibilité de définir la session.auto_start option de script utilisateur.
CakePHP supprimé cette option de session par défaut de la configuration que dans la version 2.4.0.
Donc, vous avez 3 options principales: la mise à niveau de CakePHP, de le rétrograder PHP, ou utiliser les sessions php.
Andriy Struk réponse est bonne. Il a dit: Donc, vous avez 3 options principales: la mise à niveau de CakePHP, de le rétrograder PHP, ou utiliser les sessions PHP.
Mais il y a une 4ème option, vous pouvez simplement commenter une seule ligne dans
/lib/Cake/Model/Datasource/CakeSession.php
(autour de la ligne 557):Qui s'arrête Gâteau d'appel
ini_set()
que sur la mise, et empêche l'erreur fatale.Comme Andriy la réponse dit, vous devez mettre à niveau CakePHP ou de la rétrogradation de PHP. Toutefois, si vous ne voulez pas ou n'avez pas la possibilité de le faire, vous devez reconfigurer votre Gâteau de session, afin qu'il utilise la norme de sessions PHP plutôt que de Cake session.
app/Config/core.php
Dans votre php.fichier ini, essayez de définir
session.auto_start
à 1.que je n'ai pas assez de réputation pour le commentaire, je suis en ajoutant la réponse suivante en plus de Simon un:
d'obtenir ce travail, j'ai eu à commenter tous les trois occurrences de
'session.auto_start' => 0
(autour et après la ligne 557 en CakeSession.php)
Pour plus de détails, voir le patch suivant de la CakePHP équipe:
https://github.com/cakephp/cakephp/commit/faa2cbd3c3fc1bbf83064727847789123110b8e3#diff-bd8dc176fa0f41743dbaafa75f77b5ae