推荐执行composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/设置全局镜像源,该命令写入~/.composer/config.json,使所有项目默认生效;注意键名必须为repo.packagist、composer为type值、URL末尾必须带/,且项目级repositories配置会优先覆盖全局设置。

Composer 原生支持镜像源,不需要额外代理软件——只要配置正确,国内安装速度能从几分钟降到几秒。
怎么设置全局镜像源(推荐)
Composer 会优先读取全局配置,改一次,所有项目都生效。执行命令前确认你用的是系统级 Composer(不是项目内 vendor/bin/composer):
- 运行
composer config -g repo.packagist composer https://packagist.phpcomposer.com(已停用,不推荐) - 改用官方推荐的阿里云镜像:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 或腾讯云镜像:
composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer/
注意:repo.packagist 是固定键名,不能写成 packagist.org 或漏掉 composer 子协议;路径末尾斜杠 / 必须保留,否则会报 Could not parse version constraint 错误。
为什么 composer create-project 还走原站?
这个命令在初始化阶段会绕过全局镜像配置,直接请求 packagist.org 获取模板元数据。解决办法只有两个:
- 先用镜像拉取依赖再创建项目:
composer create-project --repository-url=https://mirrors.aliyun.com/composer/ laravel/laravel myapp - 或者分两步:先
git clone模板仓库,再进目录执行composer install(此时走全局镜像)
别试图在 create-project 前临时改 COMPOSER_HOME,它不会重新加载配置,反而可能污染本地环境。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
项目级配置覆盖全局时的陷阱
有些团队会在 composer.json 里写 "repositories",比如加私有包源。一旦这么写,Composer 默认会禁用 packagist.org,包括你设的镜像源:
{
"repositories": [
{"type": "composer", "url": "https://your-private-repo.com"}
]
}
必须显式把镜像源补回来,否则所有公共包都 fallback 到原站:
{
"repositories": [
{"type": "composer", "url": "https://your-private-repo.com"},
{"packagist.org": false},
{"type": "composer", "url": "https://mirrors.aliyun.com/composer/"}
]
}
关键是 {"packagist.org": false} 这一行——它关掉默认源,但不关掉你手动加的镜像源。
镜像不是万能的,有些包(尤其是带 git submodules 或 require-dev 中的 dev-main 分支)仍会直连 GitHub;另外,镜像同步有延迟,新发布的版本可能要等 10–30 分钟才可查到。遇到 Could not find package xxx 且确定包存在,先等十分钟再试,别急着切代理。

















