在 Ubuntu 下使用 Composer 时排错,可以按下面流程和常见点一步步来。
composer --version
如果报错:
command not found → Composer 没装或没加入 PATHphp -v
Composer 2 需要:
常见缺失扩展:
php -m | grep -E 'json|openssl|curl|mbstring|zip|xml'
缺失就装:
sudo apt install php-json php-curl php-mbstring php-zip php-xml
错误示例:
PHP Fatal error: Allowed memory size exhausted
解决:
php -d memory_limit=-1 /usr/local/bin/composer update
或临时:
COMPOSER_MEMORY_LIMIT=-1 composer update
错误示例:
Permission denied
或:
mkdir(): Permission denied
✅ 正确做法(不要 sudo composer):
sudo chown -R $USER:$USER .
❌ 错误做法:
sudo composer install
错误:
SSL certificate problem
解决:
sudo apt install ca-certificates
或:
composer config -g disable-tls true
(不推荐,仅临时测试)
composer config -g repos.packagist composer https://mirrors.aliyun.com/composer/
重置:
composer config -g --unset repos.packagist
rm composer.lock
composer install
或:
composer update --lock
composer -vvv install
能看到:
composer diagnose
会检查:
composer clearcache
update-alternatives --list php
指定 PHP:
php8.1 /usr/local/bin/composer install
which composer
如果是 /snap/bin/composer,建议改用官方方式安装。
composer diagnosephp -vcomposer -vvv 命令如果你愿意,可以把 具体的报错信息贴出来(完整一点),我可以直接帮你定位是哪一类问题。