当我通过CMS(在管理员中)创建页面时,一切似乎都很好但是当我尝试访问前端页面时,我得到一个错误的空白页:
Front controller reached 100 router match iterations
#0 ..\app\code\core\Mage\Core\Controller\Varien\Front.php(183): Mage::throwException(’Front controlle...’)
#1 ..\app\code\core\Mage\Core\Model\App.php(340): Mage_Core_Controller_Varien_Front->dispatch()
#2 ..\app\Mage.php(627): Mage_Core_Model_App->run(Array)
#3 ..\index.php(80): Mage::run(’’, ‘store’)
#4 {main}
有什么想法吗?
谢谢!
答案 0 :(得分:3)
过去我们遇到过这个错误。它是由Magento未加载Cms模块引起的。系统中没有路由器匹配URL,因此默认路由器将路径设置为管理面板中设置的404页面。它的默认值是Cms索引控制器,因此如果未加载Cms模块,它将以无限循环结束。
原因有点难以猜测。在我们的例子中,我们发现当系统处于高负载时缓存正在变坏,我们清除了缓存目录。可以通过运行rm -rf var/cache/mage--*
来修复,直到页面成功加载。另一个原因是禁用app/etc/modules
中的cms模块。
答案 1 :(得分:1)
这是一篇非常好的文章,介绍了如何创建您描述的条件。 https://github.com/convenient/magento-ce-ee-config-corruption-bug
要点是存在一个错误,它允许两个进程无效并尝试同时重建缓存。这个问题在官方的magento补丁SUPEE-4755中得到了解决。
magento stack site上还有更多内容。