5 votes

Comment résoudre le problème d'une application CakePHP bloquée dans une boucle de redirection ?

J'ai un site CakePHP qui est coincé dans une boucle de redirection. J'ai supprimé tous les morceaux de code qui font une redirection et j'ai désactivé autoRedirect sur l'objet Auth.

Cela s'est produit lorsque je me suis déconnecté du site et a persisté même après avoir supprimé tous les cookies et simplement essayé de charger la page d'accueil. L'action d'indexation se trouve dans $this->Auth->allow .

Je ne devrais pas, il continue d'essayer de me rediriger vers /users/login qui ensuite redirige en boucle. L'action de connexion est également dans la liste des actions autorisées

Quelqu'un a-t-il une idée de ce qui pourrait causer cela ?

7voto

Steve Tauber Points 962

Cela se produit également dans CakePHP 1.3 si vous ajoutez un composant personnalisé qui prolonge Composant au lieu de Objet .

6voto

Fernando Barrocal Points 3878

Votre <cake>/app/app_controller devrait avoir un beforeFilter() avec tous les comportements de Auth composant. L'un de ces comportements est celui à envoyer lorsqu'un utilisateur n'est pas connecté.

vous chercherez quelque chose comme :

// If cake should redirect automatically or you will do it in the User.login()
$this->Auth->autoRedirect = true; 
// And if the autoRedirect is true, where to redirect
$this->Auth->loginRedirect = '/user/login';

G'luck

3voto

jean martins Points 31

Parfois, si la connexion à la base de données est incorrecte, l'application essaiera de se connecter au mysql et tournera en boucle. Donc, vérifiez toujours si la configuration de la base de données est correcte.

au revoir.

0voto

hamidfzm Points 871

J'ai eu exactement le même problème, et quand j'ai redémarré le service mySql la redirection s'est arrêtée. Ajoutez donc cela à votre liste de choses à vérifier.

0voto

shabby Points 197

Il semble qu'il y ait un certain nombre de raisons pour lesquelles cela peut se produire. Dans mon cas, j'essayais d'accéder à l'Internet.

cakeapplication/utilisateurs/add

et il s'est avéré que j'avais disparu

'add'=>'*',

dans le tableau des permissions dans usersController.php

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X