必须先执行composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/设置阿里云全局镜像,再清缓存(composer clear-cache)、删vendor和composer.lock,最后运行composer create-project topthink/think tp-demo;配完须验证输出是否为阿里云URL,否则静默失效。

刚装完Composer就配,别等报错再动手
配置镜像不是“出了问题才救火”,而是初始化环境的必做动作。本地装完 composer.phar 或通过 PHPStudy 安装后,第一件事就是跑 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/。这时候项目还没建、composer.json 还不存在,全局配置能直接生效,且后续所有 composer create-project 都自动走镜像——省掉 90% 的“could not find package”和卡在 Downloading... 的尴尬。
执行 composer create-project 前必须清缓存
如果之前试过没配镜像的安装,composer 已缓存了 packagist.org 的元数据,哪怕你刚配好阿里云源,它仍可能沿用旧缓存去请求海外地址。所以配完镜像后,立刻执行:
composer clear-cache- 删掉当前目录下可能残留的
vendor/和composer.lock(哪怕目录是空的) - 再运行
composer create-project topthink/think tp-demo
否则日志里看到的仍是 https://packagist.org,不是镜像 URL。
Windows 下 CMD/PowerShell 执行时要防 ^ 符号被吃掉
ThinkPHP 6.x 推荐起始版本是 ^6.0.2,但 Windows 默认 shell 会把 ^ 当转义符处理。如果你直接敲:
立即学习“PHP免费学习笔记(深入)”;
工作流任务拆解与模型编排技能。使用场景:(1) 收到复杂工作任务需要拆解为可执行步骤,(2) 需要为不同步骤选择最合适的模型,(3) 需要跟踪工作流进度和模型使用情况,(4) 长时间任务卡住需要问题诊断和解决方案。
composer create-project topthink/think tp-demo ^6.0.2
实际传给 Composer 的是 6.0.2(精确版本),而非语义化版本约束,极易因该精确版本不存在而失败。正确写法是加双引号:
composer create-project topthink/think tp-demo "^6.0.2"
或者干脆不指定版本,让 Composer 自动选 ^6.0 范围内最新 LTS 版本。
配完不验证等于没配
很多人执行完 composer config -g repo.packagist 就以为搞定了,但这条命令静默失败率很高。必须立刻验证:
- 运行
composer config -g repo.packagist,输出必须是{"type": "composer", "url": "https://mirrors.aliyun.com/composer/"}或至少是完整 URL 字符串 - 如果输出为空、
null、或仍是https://packagist.org,说明没写进去——大概率是拼错了字段名(比如repos.packagist多了个s)或路径权限不足(Windows 下没用管理员运行,macOS/Linux 下~/.composer/不可写) - 更可靠的验证方式:运行
composer show topthink/think -vvv 2>&1 | grep "Downloading",亲眼看到日志里出现mirrors.aliyun.com
镜像配置本身很简单,难的是确认它真正在起作用——这点最容易被跳过,也最常导致后续所有操作都慢得莫名其妙。


















