Magento 1.9线上站点后台无法登录,Mage_Admin_Model_User::login方法报错
Magento 1.9后台登录报错排查修复方案
该报错的核心原因是系统无法找到Mage_Admin_Model_User类的login方法,调用时 fallback 到父类Varien_Object的魔术方法__call触发错误,可按以下顺序排查:
- 检查是否存在模型重写冲突
优先查看app/code/local/Mage/Admin/Model/User.php、app/code/community/Mage/Admin/Model/User.php路径是否存在文件,Magento加载优先级为local>community>core,若这两个路径下有自定义重写的User类但未实现login方法,就会触发该错误。可先将该类文件临时重命名,清缓存后测试是否能正常登录。 - 检查核心文件完整性
确认app/code/core/Mage/Admin/Model/User.php文件存在且未被篡改,可对比同版本Magento 1.9原生包中的对应文件,若文件损坏/缺失,替换为原生文件即可,操作前请备份原有文件。 - 检查重写配置
查看所有模块的config.xml文件中global/models/admin/rewrite/user节点,是否有插件配置了该模型的重写,若有可临时注释重写规则,验证是否为插件兼容问题。 - 检查文件权限
确认app/code/core/Mage/Admin/Model/User.php文件权限为644,所属用户与web运行用户一致,避免文件读取失败导致类未正确加载。
紧急修复方案:若需快速恢复后台登录,可直接将local/community路径下自定义的Mage_Admin_Model_User重写文件暂时移除,强制系统加载原生核心类,登录后再排查具体冲突原因。
内容的提问来源于stack exchange,提问作者Pankti Shah
相关产品推荐
相关产品推荐

