composer超时本质是process-timeout默认300秒不足,临时用–timeout=600参数覆盖,永久改全局配置composer config -g process-timeout 600,但需配合国内镜像源使用才有效。
Composer 执行超时,本质是 process-timeout 默认值(300 秒)不够用,尤其在低带宽、高延迟或依赖较多的项目中。直接调大这个值就能解决,但得知道在哪设、设多少、以及为什么不能无脑拉到 0。
如何临时绕过超时(适合单次安装/更新)
加 --timeout 参数是最快的救急方式,它会覆盖全局和项目配置:
composer install --timeout=600
常见场景包括:CI 环境首次构建、本地网络不稳定、下载 phpunit 或大型扩展包时卡在 Downloading...。
-
--timeout=0表示禁用超时(慎用,可能无限挂起) - 该参数只对当前命令生效,不影响后续操作
- 如果仍失败,说明不是超时问题,而是网络中断或源不可达
永久修改全局 process-timeout 配置
运行以下命令把默认值写入全局配置文件(通常是 ~/.composer/config.json):