Shopware停用扩展致内存耗尽,仅用管理UI如何解决?
Shopware 6.4.16.1 内存耗尽问题分析与后台UI解决方案
内存耗尽原因解释
停用扩展看似是简单操作,但Shopware执行该动作时会触发一系列后台流程:
- 清理扩展相关的缓存文件与配置
- 更新数据库中扩展的状态记录
- 移除扩展注册的服务、事件监听等依赖项
- 重新生成系统的服务容器配置
Shopware 6.4.16.1存在版本特定的内存管理bug,加上默认128MB的PHP内存限制(对应报错中的134217728字节)本身偏低,导致操作过程中内存逐步耗尽,最后哪怕仅需分配946KB也会触发溢出错误。后台更新器升级时的内存消耗逻辑类似,同样会因资源加载过多触发该问题。
仅通过后台UI的尝试方案
目前Shopware后台没有直接修改PHP内存限制的功能,但可以尝试以下操作降低内存占用,进而完成停用/升级操作:
- 清理后台缓存:进入后台「设置 > 系统 > 缓存管理」,点击「清空所有缓存」,完成后重新尝试停用扩展或启动更新。清理缓存能释放部分已占用的内存资源,减少后续操作的内存压力。
- 开启维护模式:进入后台「设置 > 系统 > 维护」,启用维护模式。维护模式下系统会关闭前端访问,后台仅加载核心功能,能大幅降低资源占用,之后再尝试目标操作。操作完成后记得关闭维护模式。
- 简化后台操作环境:关闭后台所有多余的标签页,仅保留扩展列表页;操作前避免在后台执行其他耗资源的动作(如批量数据导出、大量商品编辑),确保后台进程内存占用处于较低水平。
结论
如果上述后台UI操作均无法解决问题,那么只能通过SSH/SFTP修改php.ini提升内存限制(建议设置为512MB及以上),或使用命令行工具执行操作:
- 停用扩展:
bin/console extension:disable ShopwareStore - 执行升级:
bin/console system:update --force
内容的提问来源于stack exchange,提问作者Ingo Steinke
相关产品推荐
相关产品推荐

