Mon application utilise le routage et un plugin de traduction selon le modèle suivant :
bootstrap.php
routes.ini
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 protected function _initRouter(){ $this->bootstrap('frontController'); $front = $this->getResource('frontController'); $router = $front->getRouter(); $router->addConfig(new Zend_Config_Ini(APPLICATION_PATH . '/configs/routes.ini', 'routes'), 'routes'); return $router; }
J'utilise également un plugin d'authentification qui vérifie dans une bd si l'utilisateur a accès à la ressource demandée. Une ressource, bien évidemment, est définie par le triplet (Module, Controleur, Action)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 routes.acceuil.type = "Zend_Controller_Router_Route" routes.acceuil.route = ":language/acceuil" routes.acceuil.defaults.module = frontend routes.acceuil.defaults.controller = index routes.acceuil.defaults.action = index routes.acceuil.defaults.language = fr
Quand je saisis, http://localhost/fr/acceuil ou http://localhost/en/acceuil ça marche normalement.
Quand je saisis http://localhost/fr/frontend/index/index le plugin d'authentification me redirige vers la page d'authentification. Cela veut dire qu'il n'a pas bien interprété l'URL et donc il n'a pas reconnu le triplet (Module, Controleur, Action)=(Frontend, index,index).
Partager