Composer在Windows 11上需配置PATH才能全局使用,安装时应勾选“Add to PATH”或手动添加C:\ProgramData\ComposerSetup\bin;PHP需≥7.4且启用openssl、mbstring等扩展;全局工具需将%USERPROFILE%\AppData\Roaming\Composer\vendor\bin加入PATH;所有PATH修改后必须重启终端生效。

Composer 在 Windows 11 上不需要“配置环境变量”也能用,但不设就只能在安装目录下运行 composer 命令——这是绝大多数人卡住的第一步。
为什么 cmd 找不到 composer 命令
Windows 默认不会把 Composer 的安装路径加进系统 PATH。哪怕你双击 Composer-Setup.exe 装完了,cmd 或 PowerShell 里输 composer --version 还是报 'composer' is not recognized as an internal or external command。
这不是安装失败,是路径没暴露给终端。
- 安装时勾选 Add to PATH(新版安装器默认不勾)
- 如果漏了,手动把
C:\ProgramData\ComposerSetup\bin加进系统环境变量PATH - 加完必须重启终端(已打开的 cmd/PowerShell 不会自动 reload
PATH) - 验证:新开一个终端,运行
echo %PATH%看有没有那行路径
PHP 版本和扩展必须提前配好
Composer 是 PHP 脚本,不是独立程序。它启动时会调用本地 PHP 解释器,所以:php 命令本身得能用,且满足最低要求(目前是 PHP 7.4+)。
- 运行
php -v确认有输出,且版本 ≥7.4 - 关键扩展必须启用:
openssl、mbstring、json、phar(缺任一都会报错或卡在初始化) - 检查方式:
php -m | findstr "openssl mbstring json phar" - 如果缺,去
php.ini里取消对应;extension=行的注释,然后重启终端
全局安装后 composer create-project 报错 “Could not fetch”
这通常不是网络问题,而是 Composer 默认用了 HTTPS 协议连 packagist.org,而某些 Windows 企业环境或杀毒软件会拦截或篡改 TLS 握手。
- 先试
composer diagnose,重点看curl和openssl检查项是否全绿 - 如果提示 SSL 证书错误,临时切 HTTP 源:
composer config -g repo.packagist composer https://packagist.org - 更稳妥的做法是换国内镜像:
composer config -g repo.packagist composer https://packagist.phpcomposer.com(注意该镜像已停,推荐用https://mirrors.aliyun.com/composer/) - 切镜像后记得清缓存:
composer clear-cache
用 composer global require 安装命令行工具却找不到命令
全局安装的包(比如 laravel/installer)默认放在 %USERPROFILE%\AppData\Roaming\Composer\vendor\bin,这个路径不在系统 PATH 里。
- 手动把
%USERPROFILE%\AppData\Roaming\Composer\vendor\bin加进用户级PATH - 别忘了重启终端(再次强调:已有终端不会继承新 PATH)
- 验证:
echo %PATH%里能看到这行,再运行laravel --version就正常了 - 注意:全局 bin 目录和 Composer 主程序的 bin 目录是两个不同路径,容易搞混
最常被跳过的其实是重启终端这一步——PATH 改了,但旧窗口里的 shell 进程根本不知道,它还拿着老的环境快照。很多人反复折腾半小时,就差这一下。










