镜像未生效主因是配置错误、缓存未清、lock未删、prefer-source开启或项目级repositories覆盖全局设置;必须严格校验config命令格式、清缓存、删composer.lock与vendor、关闭prefer-source。

卡在下载包,90% 是镜像没生效,不是网速问题,也不是 Symfony 本身慢。
composer config -g repo.packagist 命令必须写对三处
这条命令静默失败率极高,错一处就等于没配:
-
repo.packagist必须是单数,写成repos.packagist或repositories会写进无效字段,composer config -g repo.packagist输出为空或null - 命令末尾必须显式带
composer类型标识:composer https://mirrors.aliyun.com/composer/,漏掉composer就 fallback 到https://packagist.org - URL 必须以
/结尾:https://mirrors.aliyun.com/composer/✅,少斜杠会拼出/composerpackages.json导致 404
换镜像后仍卡在 Downloading,必须清缓存 + 删 lock
Composer 不会自动刷新旧缓存里的元数据,composer.lock 里还硬编码着 packagist.org 的 dist URL,导致它假装走了镜像,实际还在重试海外地址:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 立即执行
composer clear-cache—— 清的是元数据缓存(packages.json、hash 校验信息),不是临时文件 - 删掉项目根目录的
composer.lock和vendor/,再跑composer install;否则 lock 文件里的dist.url不会随镜像配置更新 - 若用过
composer global require,还要进~/.composer(Windows 是C:\Users\用户名\AppData\Roaming\Composer)单独配一次:composer config repo.packagist composer https://mirrors.aliyun.com/composer/(不加-g)
项目级配置会直接覆盖全局镜像
只要 composer.json 里有 "repositories" 字段(哪怕只是空数组),全局 repo.packagist 就被跳过:
- 运行
composer config --list | grep repositories,确认是否读到了项目级配置 - 删掉
composer.json中的"repositories"字段,除非你真需要私有源;已有私有源时,应显式保留"packagist.org": false并把阿里云镜像作为第一个仓库 - 检查是否含
"prefer-source": true—— 这会让 Composer 克隆 Git,而国内镜像只代理dist(ZIP),source 模式完全不加速
验证是否真走镜像的唯一方式
别信命令没报错,要看真实行为:
- 运行
composer config -g repo.packagist,输出必须是{"type": "composer", "url": "https://mirrors.aliyun.com/composer/"}或纯 URL 字符串;含packagist.org、空、null都说明失败 - 运行
composer install -vvv,盯住第一行日志:必须出现Downloading https://mirrors.aliyun.com/composer/或类似路径;如果仍是api.packagist.org或repo.packagist.org,说明镜像根本没走 - 某些包(如
symfony/ux-turbo)依赖dev-main分支,阿里云镜像同步可能滞后几分钟,此时可临时加--repository=https://packagist.org单独拉,但仅限调试
真正卡点往往不在“换没换”,而在“换完有没有清旧缓存、删旧 lock、关掉 prefer-source”。这三步漏掉任意一个,镜像就形同虚设。










