运行 Composer 时出现 Allowed memory size exhausted,先确认报错来自 PHP 限制还是操作系统终止进程。命令行使用的 php.ini 可能与网站完全不同:
php --ini
php -r 'echo ini_get("memory_limit"), PHP_EOL;'
free -m
临时提高 CLI memory_limit 只能解决上限过低,不会增加服务器真实内存。若进程被 OOM Killer 终止,应减少并发、增加可用内存或在构建机完成依赖安装。
生产部署优先使用已有 composer.lock 执行 install;随意运行 update 会重新求解整个依赖图,耗时和内存都更高。扩展的版本约束过宽或彼此冲突,也会让求解器反复尝试。
composer validate
composer why-not vendor/package 1.2.3
不要删除 lock 文件来碰运气。先确认 PHP 版本、Composer 版本和 Magento 版本的兼容范围,再解决具体冲突,构建结果才可重复。

