J'ai des pages qu'il faut protéger et permettre uniquement les utilisateurs connectés à y accèder. J'ai créé une fonction redirect qui a pour role de rediriger à une url spécifique:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
public function redirect($url, $code = null)
    {
        if($code == 301){
            header("HTTP/1.1 301 Moved Permanently");
        }
        header('Location: '.Router::url($url));
        die();
    }
Et une fonction isLogged qui permettra de vérifier si une session active est existante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
public function isLogged()
    {
        return isset($_SESSION['User'][0]->id);
    }
Dans ma page à sécurisé, j'ai fais un test pour vérifier si l'utilisateur est connecté, si ce n'est pas le cas, je dois le rediriger vers la page d'authentification:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
if(!$this->Session->isLogged()){
    $this->redirect('users/login');
}
Sauf que là j'ai la fameuse erreur ERR_TOO_MANY_REDIRECTS sur ma route users/login.
J'ai testé la meme chose pour la protection de mon espace admin et ça a marché sans problème. Le problème est survenu uniquement dans la protection des pages frontoffice de mon site.

Avez-vous une idée, d'où viens le problème ?