换镜像后卡在loading composer repositories必须执行composer clear-cache,否则composer仍读旧缓存元数据;需先确认composer config -g repo.packagist输出含正确url且结尾带斜杠,再清缓存,否则换源无效。

换镜像后卡在Loading composer repositories?必须清缓存
换完阿里云或腾讯云镜像,composer update 还卡在 Loading composer repositories with package information 超 30 秒?不是镜像没生效,而是 Composer 仍在读旧缓存里的 packages.json 元数据——它根本没去新地址拉取。这一步不清理,换源等于白换。
- 执行
composer clear-cache是唯一有效动作;composer update -v或删vendor/都不解决这个问题 - 确认镜像已设对:
composer config -g repos.packagist输出里必须含"url": "https://mirrors.aliyun.com/composer/"(结尾带斜杠) - Windows 用户若提示
Cache directory does not exist,先检查%APPDATA%\Composer\Cache是否被杀毒软件锁定,或被COMPOSER_CACHE_DIR环境变量覆盖但未生效
清缓存后还是卡在Downloading https://?那是网络层问题
看到 Downloading https://mirrors.aliyun.com/composer/xxx.zip 卡住,说明请求已发到镜像源,但底层 cURL 失败了。这不是 Composer 缓存的事,得查系统级连通性。
工作流任务拆解与模型编排技能。使用场景:(1) 收到复杂工作任务需要拆解为可执行步骤,(2) 需要为不同步骤选择最合适的模型,(3) 需要跟踪工作流进度和模型使用情况,(4) 长时间任务卡住需要问题诊断和解决方案。
- 手动验证:
curl -v https://mirrors.aliyun.com/composer/packages.json—— 若卡在 DNS 解析或 TLS 握手,就不是 Composer 的锅 - 常见真因:
systemd-timesyncd时间偏差(尤其 WSL/Docker)、HTTP_PROXY设了但没配http.sslcafile、公司 WAF 拦截 HTTPS 请求 -
cURL error 28是超时,和process-timeout参数无关;调大这个值只会让命令 hang 更久
缓存清了,但装的还是旧包?检查 lock 文件和源配置
清缓存不会改变 composer.lock 里锁定的版本,也不会绕过 repositories 配置。你看到的“装旧包”,大概率是锁文件或私有源在起作用。
-
composer install严格按composer.lock安装,清缓存只影响下载路径,不触发版本升级 - 若刚切了国内镜像却仍报
Could not load package xxx in http://repo.packagist.org,说明composer config repo.packagist false没生效,旧全局源还在兜底 - 私有源响应头带
X-Composer-Cache-TTL(如腾讯云 TKE 镜像),本地清缓存无效,得等镜像源过期或临时切回官方源验证
vcs/ 目录占空间最多,但 clear-cache 默认不删它
composer clear-cache 默认只清 files/ 和 repo/,而最占空间的 vcs/(Git 裸仓库)被跳过。一个废弃的 Git 仓库就能吃掉 500MB,清完总空间可能毫无变化。
- 先确认真实缓存路径:
composer config --global cache-dir - Linux/macOS 查占用:
du -sh $(composer config --global cache-dir)/vcs;Windows 直接进资源管理器看%APPDATA%\Composer\Cache\vcs属性 - 要清它,得手动:
rm -rf ~/.composer/cache/vcs/*(Linux/macOS)或rd /s /q "%APPDATA%\Composer\Cache\vcs"(Windows) - CI/CD 中务必加
--no-interaction,否则命令会卡在交互确认上
composer config -g 和 curl -v 把链路走通。










