先换阿里云镜像并清缓存:composer config -g repositories.packagist.org composer https://mirrors.aliyun.com/composer/,再执行composer clear-cache;删vendor和composer.lock后重装,确认php≥7.2.5且json、mbstring、xml、curl扩展已启用。

在 Windows 10 上用 Composer 安装 ThinkPHP 6.0 时,执行 composer create-project topthink/think 却卡在 Downloading、报 Connection timed out 或 failed to open stream,不是你网络断了,而是当前配置的国内镜像源已失效或未真正生效——阿里云镜像虽稳,但若配置命令写错、缓存未清、或 Composer 版本升级导致键名变更,就会静默回退到不可用的 packagist.org。
验证当前镜像源是否真实生效
先别重装或删文件,打开 CMD(不是 Git Bash),运行:
composer config -g repo.packagist
如果输出是空、null、或显示 "url": "https://packagist.org/",说明镜像根本没切过去。Composer 2.2+ 已弃用 repo.packagist,但很多教程仍沿用旧写法,它会被静默忽略。
正确验证方式是运行:composer diagnose,找到 “Repo:” 这一行,域名必须是 mirrors.aliyun.com;再加日志跑一次:composer show -p -vvv | head -5,第一行 URL 必须含你配的镜像地址,否则所有后续操作都在白忙。
强制启用阿里云镜像(兼容 Composer 2.2+)
方法一:用新版键名全局配置(推荐)
执行:composer config -g repositories.packagist.org composer https://mirrors.aliyun.com/composer/
注意末尾斜杠不能少,漏掉会 404;type 值 composer 必须显式写出,不能省略。
方法二:临时指定镜像安装(不改全局,防污染)
直接运行:composer create-project --repository=https://mirrors.aliyun.com/composer/ topthink/think myapp
这一步绕过本地 config 文件,命令里写的镜像优先级最高,适合帮别人调试或 CI 环境。
方法三:手动编辑 config.json(当命令不生效时兜底)
用记事本打开 %APPDATA%\Composer\config.json(不是 ~/.composer/config.json,Git Bash 下路径不同),确保内容包含:
"repositories": {"packagist.org": {"type": "composer", "url": "https://mirrors.aliyun.com/composer/"}}
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
Windows 下 Composer 默认读取 %APPDATA% 路径,写错位置等于没配。
清除残留缓存与锁文件
第一步:清 Composer 全局缓存
执行:composer clear-cache
第二步:删掉项目目录下可能残留的 【vendor/ 和 composer.lock】
这两个文件一旦存在,Composer 就会按旧约束解析依赖,哪怕镜像已换,也会反复尝试从旧源拉包。尤其当你之前安装失败过,它们大概率已损坏。
第三步:确认 PHP CLI 环境可用
运行:php -v 检查版本是否 ≥7.2.5;再运行:php -m | findstr /i "json mbstring xml curl",确保这四个扩展全在列表里。Windows 用户务必用 php --ini 查 CLI 加载的 php.ini 路径,和浏览器访问的 phpinfo() 显示的不是同一份。
执行安装并验证入口
① 在空白目录下运行:
composer create-project --no-scripts --no-autoloader topthink/think myapp
加 --no-scripts --no-autoloader 是为跳过可能因权限或路径失败的初始化脚本,让依赖先落地。
② 进入 myapp 目录,手动重建自动加载:
cd myapp && composer dump-autoload -o
③ 验证框架是否真正就绪:
运行:php think,能输出命令列表即表示 autoload 生效;访问 http://localhost/myapp/public/index.php(Web 服务器 root 必须指向 public/ 目录),看到 ThinkPHP 默认欢迎页才算完成。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!










