You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

升级Magento 2.4.3-p1至2.4.4后后台仅控制面板菜单可访问

Magento 2.4.4升级后仅后台控制面板可访问的排查方案

这类问题是2.4.3-p1升2.4.4版本的高发生产环境专属故障,测试环境正常说明代码本身无兼容性问题,故障点基本集中在生产环境配置、缓存、权限三类场景,按以下优先级排查即可:

  • 优先排查ACL权限缓存异常:2.4.4调整了后台ACL权限的校验逻辑,旧版本缓存的ACL规则会直接拦截非控制面板的所有后台路由,哪怕是超级管理员账号也会被拦截。直接执行以下命令清理关联缓存并重索引权限数据:
    bin/magento cache:clean config layout block_html acl
    bin/magento indexer:reindex admin_rule
    
    90%以上的同场景故障执行完这两步就能恢复,大部分运维升级后只清理页面、静态资源缓存,漏掉ACL专属缓存就会触发该问题。
  • 核对Web服务器重写规则:2.4.4更新了后台路由的匹配规则,若生产环境Nginx/Apache的伪静态规则还是2.4.3旧版本的,会导致除默认控制面板(index/index路由)之外的所有后台路径匹配失败,出现404、跳转回登录页的问题。直接把当前生产环境的重写规则和代码包自带的nginx.conf.sample/.htaccess.sample文件里的后台路由段逐行对齐,重点检查PHP入口文件匹配段、后台路径rewrite段的规则,测试环境因为用的是默认自带规则所以不会出问题。
  • 重置OPcache缓存:PHP升级到8.1后如果配置了opcache.validate_timestamps=0(生产环境常见配置),升级代码后不重启PHP-FPM服务的话,OPcache会一直加载旧版本的类文件,导致路由解析逻辑异常。直接重启PHP-FPM服务即可,必要时可以临时开启opcache.validate_timestamps=11-2分钟,等所有类文件重载完成后再改回生产配置。
  • 校验数据库权限记录:如果升级过程中ACL相关的数据patch执行失败,会导致authorization_rule表中超级管理员角色缺失全量权限记录。直接查表中对应管理员角色ID的记录,确认是否存在resource = 'Magento_Backend::all'、permission = 'allow'的条目,缺失的话手动补全后再重索引。
  • 检查目录权限:确认generated/、var/目录的属主为Web运行用户,且有读写权限。很多运维部署时只给pub/目录赋权,导致generated/目录下的后台路由代理类、权限拦截类生成不完整,也会触发路由访问异常。重新赋权后再执行一次bin/magento setup:di:compile即可。

注:反复执行静态资源部署对该问题无效,静态资源只影响页面样式、JS加载,和后台路由、权限校验逻辑完全无关,排查到pub/static目录文件生成正常,已经可以排除静态资源层的问题。

内容的提问来源于stack exchange,提问作者Sérgio Mordente

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 12:15:42