必须亲眼看到请求发到镜像域名才算生效;运行composer clear-cache && composer require -vvv并检查日志中downloading url,或用composer diagnose确认实际使用的repo packagist.org地址。

改完配置不等于生效,必须亲眼看到请求发到镜像域名才算数。
看实际请求 URL,不是看 config 输出
composer config -g repo.packagist 只告诉你“写了啥”,不反映当前真实行为。项目级 repositories 字段会无条件覆盖全局配置,所以得查运行时真正用的地址。
- 全局实际生效源:运行
composer config -g repo.packagist,输出是完整 JSON(如{"type":"composer","url":"https://mirrors.aliyun.com/composer/"})才有效;空或报错说明走默认源https://packagist.org - 项目级实际生效源:进项目目录,运行
composer config repositories,找"packagist.org": { "type": "composer", "url": "..." }这一项——它才是 Composer 7+ 唯一认的主源标识 - 最可靠验证方式:加
-vvv跑一次真实操作,比如composer -vvv require monolog/monolog 2>&1 | grep "Downloading",确认日志里出现的是你配的镜像域名(如mirrors.aliyun.com),而不是packagist.org或repo.packagist.org
清缓存是必做动作,否则永远走旧路径
Composer 不会自动感知配置变更,旧的元数据缓存(尤其是 p2/ 目录)会继续被读取,导致行为与新配置完全不符。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 执行
composer clear-cache是强制刷新的第一步 - 如果还卡在
Loading composer repositories...,顺手删掉vendor/和composer.lock(可选),排除本地状态干扰 - CI/CD 环境中,
sudo composer config -g写进了/root/.composer/config.json,但构建用的是普通用户,缓存也读不到——得清两次缓存(root 和当前用户)
curl 手动测 packages.json 接口,排除镜像服务异常
配置对、缓存清了、命令也跑了,但还是卡住?大概率是镜像站本身不可用,而不是你本地问题。
- 直接测试接口可用性:
curl -I https://mirrors.aliyun.com/composer/packages.json,应返回HTTP/2 200 - 华为云当前有效地址是
https://repo.huaweicloud.com/repository/php/,旧地址(如mirrors.huaweicloud.com)已失效 - 腾讯云镜像自 2026 年起已停更,别再试
https://mirrors.cloud.tencent.com/composer/
最容易被忽略的一点:Windows 用户改完 composer config -g 必须重启终端;Linux/macOS 下若曾用 sudo 执行过,~/.composer 权限可能错乱,得先 chown -R $USER ~/.composer 再重试。










