Correction du problème « Le contrôleur frontal a atteint 100 itérations de correspondance de routeur »

Avez-vous déjà rencontré le bug suivant : « Le contrôleur frontal a atteint 100 itérations de correspondance de routeur » ? Résolvez-le comme suit :

1. Vous pouvez obtenir plus d'informations en accédant au fichier Magento Core app/code/core/Mage/Core/Controller/Varien/Front.php, recherchez les lignes suivantes :

tant que (!$request->isDispatched() && $i++<100) { foreach ($this->_routers comme $router) { si ($router->match($this->getRequest())) { pause; } } }

Remplacer par :

Mage::log('----Routeurs correspondants------------------------------'); Mage::log('Total ' . count($this->_routers) . ': ' . implode(', ', array_keys($this->_routers))); while (!$request->isDispatched() && $i++<100) { Mage::log('- Itération ' . $i); $requestData = array( 'path_info' => $request->getPathInfo(), 'module' => $request->getModuleName(), 'action' => $request->getActionName(), 'controller' => $request->getControllerName(), 'controller_module' => $request->getControllerModule(), 'route' => $request->getRouteName() ); $st = ''; foreach ($requestData as $key => $val) { $st .= "[{$key}={$val}]"; } Mage::log('Requête : ' . $st); foreach ($this->_routers as $name => $router) { if ($router->match($this->getRequest())) { Mage::log('Correspond à "' . $name . '" routeur, classe ' . get_class($router)); break; } } }

Solution possible pour résoudre le bug « Le contrôleur frontal a atteint 100 routeurs »

Que s'est-il passé dans mon cas ? J'ai ouvert le fichier var/log/system.log et il y a eu un temps d'arrêt entre 5 et 6. Il y a donc eu un effacement entre 5 et 6. Le dernier journal est à 05:10, puis le site est tombé en panne :

2014-12-03T05:09:59+00:00 DEBUG (7) : ----Routeurs correspondants------------------------------ 2014-12-03T05:09:59+00:00 DEBUG (7) : Total 7 : admin, standard, cms, blog, default 2014-12-03T05:09:59+00:00 DEBUG (7) : - Itération 1 2014-12-03T05:09:59+00:00 DEBUG (7) : Requête : [path_info=/admin/][module=][action=][controller=][controller_module=][route=] 2014-12-03T05:10:02+00:00 DEBUG (7) : Correspondance par routeur « admin », classe Mage_Core_Controller_Varien_Router_Admin 2014-12-03T05:10:02+00:00 DEBUG (7) : - Itération 2 2014-12-03T05:10:02+00:00 DEBUG (7) : Requête : [path_info=/admin/][module=admin][action=login][controller=index][controller_module=Mage_Adminhtml][route=adminhtml] 2014-12-03T05:10:02+00:00 DEBUG (7) : Correspondance avec le routeur « admin », classe Mage_Core_Controller_Varien_Router_Admin

Recherchez donc la dernière entrée avant la panne. Dans mon cas, il y avait un problème de route d'administration. Je l'ai résolu en modifiant l'URL d'administration dans app/etc/local.xml (jusqu'ici, tout va bien). Je vous tiendrai au courant si la panne se reproduit.

Grâce à: http://stackoverflow.com/questions/6262129/magento-front-controller-reached-100-router-match-iterations-error

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

fr_FRFrançais
Défiler vers le haut