Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Bonjour,
alors c'est une question de debutant, mais y'a un truc que je capte pas avec la gestion des erreurs...
J'ai des ACL dans mon appli, et 3 types d'utilisateurs: guest, editeur et admin
J'utilise le rewriting.
Lorsqu'une action n'existe pas et que le controlleur existe (j'ai changé le nom des actions), je suis redirigé vers ma page de login, et quand je me loggue, là ça plante (forcément) puisque l'action n'existe pas... Il y a forcemment un truc pas bon dans mes ACL mais je n'arrive pas à savoir quoi. Est ce que qq'un pourrait m'aider à comprendre s'il vous plait?
Autre petit soucis, mais ça viendra ensuite, plutot que de renvoyer une 404, le client voudrait que je redirige avec une 301 vers la home ... (c'est pas top mais il insiste alors bon...). Est que dans mon errorController je peux faire un truc "bourrin" comme ça?
<?php class ErrorController extends Zend_Controller_Action { public function errorAction() { $this->_redirect('/'); } }
ca fonctionne mais c'est pas peut-etre pas une 301? (encore une fois je ne cautionne pas ce type de comportement dans l'appli mais je n'ai pas le choix)
Merci d'avance pour les tuyaux,
Julien
Hors ligne
Pour ta redirection, voici un code qui avait été proposé mikaelkael dans ce topic http://www.z-f.fr/forum/viewtopic.php?id=1266 :
$this->_redirector = $this->_helper->getHelper('Redirector'); $this->_redirector->setCode(301);
Pour ton problème d'action, je ne comprends pas trop ce que tu souhaites. Si l'action n'est pas disponible pour tel ou tel utilisateur, c'est à toi d'effectuer les contrôles nécessaires et de rediriger l'utilisateur le cas échéant.
Hors ligne
ou
$this->_redirect('/', array('exit'=>true));
Attention quand même aux boucles infinies, même si les clients HTTP modernes savent les gérer ^^
Hors ligne