composer-setup.exe在国内基本不可用,因其强制访问不稳定官网校验服务器,易卡在“verifying installer”或报ssl错误;应改用composer.phar手动安装并配置阿里云镜像。

直接说结论:Composer-Setup.exe 在国内基本不可用,不是你网络差,是它根本连不上官方校验服务器。 安装过程会卡在“Verifying installer”或报 SSL certificate problem,哪怕开了代理也大概率失败。别硬扛,换 composer.phar 手动装更稳、更快、可控性更强。
为什么 Composer-Setup.exe 在国内总是失败
这个安装包本质是 Windows GUI 封装器,启动时会强制访问 https://getcomposer.org/installer 并校验 SHA384 签名——而该域名在国内 DNS 和 HTTPS 层面长期不稳定。即使你本地能 curl 通,Setup.exe 内置的 PHP 运行时也可能因缺少 ext-curl 或 SSL 证书路径错误直接退出。企业环境还常被杀毒软件拦截进程注入。
- 现象:点击安装后黑窗闪退 / 卡在 “Verifying installer…” 超过 2 分钟 / 提示
Unable to connect to getcomposer.org - 本质:它不走系统代理,也不读取
php.ini的curl.cainfo配置,校验逻辑硬编码 - 替代方案:跳过 GUI,用命令行直下
composer.phar,全程可控
Windows 下用 composer.phar 手动安装(推荐)
前提是已装好 PHP(php -v 能输出版本),且 php.exe 在系统 PATH 中。以下命令全部在普通 CMD 或 PowerShell 中执行,无需管理员权限:
- 下载安装脚本:
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');" - 执行安装:
php composer-setup.php(此时生成composer.phar) - 移入全局可用位置:
move composer.phar %USERPROFILE%\AppData\Local\Programs\PHP\(假设 PHP 安装在此,也可选C:\bin\等自建目录) - 添加到 PATH:
setx PATH "%PATH%;%USERPROFILE%\AppData\Local\Programs\PHP\"(重启终端生效) - 验证:
composer --version应输出类似Composer version 2.6.6
注意:https://install.phpcomposer.com/installer 是国内镜像站维护的可信入口,比官网地址更稳定。
装完必须立刻配国内镜像,否则还是慢
只装不配镜像,composer install 依然会去连 packagist.org,90% 概率超时或卡死在 Resolving dependencies。全局配置命令极易写错,三处不能漏:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 必须带
-g(否则只改当前项目) - 键名必须是
repo.packagist(不是repos.packagist,也不是packagist.org) - type 值必须是
composer,URL 必须是 HTTPS 且结尾有/
正确命令:composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/
验证是否生效:composer config -g repo.packagist,应返回完整 JSON 对象;如果返回空或报错,说明上一步没写对,重输一遍。
常见卡点和绕过方式
就算镜像配对了,仍可能卡在 Resolving dependencies ——这不是镜像问题,是 Composer 自身依赖解析逻辑导致的:
- 检查
composer.json里有没有宽泛的 PHP 版本约束,比如"php": "^7.4 || ^8.0",换成具体版本如"php": "8.1.25"可大幅提速 - 删掉所有
dev-开头的 require(如"monolog/monolog": "dev-main"),它们会让解析器尝试无限分支 - CI 环境下加
--no-interaction --prefer-dist参数,避免交互等待和源码包编译 - 如果只是想快速装依赖跑起来,临时用
composer install --ignore-platform-reqs绕过 PHP 扩展检测(上线前务必去掉)
真正难调的从来不是“怎么装”,而是“为什么装一半就卡住”。镜像只解决下载,解析逻辑、PHP 环境、依赖写法这三块才是静默卡顿的根源。










