大约一周前,我在一个新站点的测试环境中工作。我离开了一个小时,回来了,现在无法进入管理页面,如 '<a href="http://magento.localhost.com/admin" rel="nofollow noreferrer">http://magento .localhost.com/admin' 导致 No Route 404。我是唯一可以访问此内容的人,它在任何意义上都不是活的。我正在使用带有 Ubuntu 的 VBox 来托管环境。在可能的修复方面,到目前为止,我已经尝试过……
确保 core_store、core_store_group、core_website 和 customer_group 表 id 设置为 0(如本文和许多其他文章中所述 - http://www.nude-webdesign.com/fix-for-magento-admin-error-404-页面未找到/)
使用 /app/code/core/Mage/Core/Controller/Varien/Front.php 方法 _isAdminFrontNameMatched 来显示 adminPath(它是 'admin')
清除 var 文件夹,清空浏览器缓存。站点的缓存过去和现在都已关闭。
将 'index.php' 添加到 url 仍然会导致 404。
根据Magento Admin 404,文件 'app/etc/use_cache.ser' 对我来说不存在。
在发生这种情况的那天,我只是在玩弄一些我复制到我制作的模块的布局文件和主题的媒体查询(甚至在这个问题开始发生之前,所有这些都恢复到原来的状态)。
有人对这里有什么问题有任何建议吗?发生这种情况的任何其他可能原因?
感谢一切。
编辑 2013 年 9 月 10 日下午 1:06:为了响应 Alan Storm 检索 Standard.php 正在寻找的控制器名称的方法,我收到了许多“丢失”的控制器文件。但是,在下载 1.7.0.2 的新副本以查找这些文件后,它们都不存在于其中。这是我在 Standard.php 中 Alan 的 var_dump 建议的输出:
...“/public_html/app/code/core/Mage/Index/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Paygate/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Paypal/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Widget/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Oauth/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Authorizenet/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Bundle/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Centinel/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Compiler/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Connect/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Downloadable/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/ImportExport/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Api2/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/PageCache/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/XmlConnect/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/Adminhtml/controllers/Controller.php”
...“/public_html/app/code/community/Phoenix/Moneybookers/controllers/Controller.php”
...“/public_html/app/code/core/Mage/Captcha/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/CurrencySymbol/controllers/Adminhtml/Controller.php”
...“/public_html/app/code/core/Mage/CurrencySymbol/controllers/Adminhtml/IndexController.php”
2013 年9 月 10 日下午 3:39 解决:好的,虽然很直白,但它已修复。我将 Alan Storm 的 var_dump 建议的输出表示为我在核心代码池的某处创建了一个错误(这不是我打算做的事情,而是使用默认代码)。不幸的是,为了准确学习,我将其全部替换为默认的核心代码池 1.7.0.2。这是在艾伦用我从未调查过的更多建议更新他的原始答案之前完成的。谢谢艾伦,你很酷。