php -m | findstr openssl无输出说明php cli未启用openssl扩展,需用php --ini定位正确php.ini,取消extension=php_openssl.dll前的分号,并确保php目录已加入path且路径无空格或中文。

php -m | findstr openssl 没输出?先救环境再装 Composer
Composer 启动失败、composer --version 报错或卡在 “Resolving dependencies”,八成不是 Composer 本身的问题,而是 PHP CLI 环境没准备好。最常踩的坑是 openssl 扩展没启用——它连 HTTPS 都打不开,怎么可能拉包。
执行 php -m | findstr openssl(Windows)或 php -m | grep openssl(Linux/macOS),没任何输出就说明 OpenSSL 被注释掉了。
- 打开你的
php.ini文件(用php --ini查路径),找到;extension=php_openssl.dll(Windows)或;extension=openssl(Linux/macOS),删掉前面的分号 -
php.exe所在目录必须加进系统PATH,且路径里不能有空格或中文(比如C:\Program Files\php就不行,得挪到C:\php) - 宝塔用户还要去「PHP 管理」→「禁用函数」里删掉
putenv、proc_open、pcntl_signal,否则 Composer 直接启动失败
curl -sS https://getcomposer.org/installer | php 已过时
2026 年起官方强制校验 SHA-384 哈希值,跳过这步等于默认信任网络传输链路上的任意中间节点。网上还在传的管道安装法,大概率载入被篡改的脚本。
正确流程分三步,缺一不可:
- 下载安装脚本:
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" - 校验哈希(以当前最新值为例):
php -r "if (hash_file('sha384', 'composer-setup.php') === 'e21205b207c3ff031906575712edab6f13eb0b361f2085f1f1237b7126d785e826a4d0cc4b77f883902bb78de46181d610') { echo 'OK'; } else { echo 'Installer corrupt'; }",输出OK才能继续 - 执行安装:
php composer-setup.php,再sudo mv composer.phar /usr/local/bin/composer(Linux/macOS)或按 Windows 方式配.bat文件
composer config -g repo.packagist composer https://... 必须写对三个细节
设了镜像却还是从 packagist.org 慢速拉取?不是网差,是配置没生效。关键点就三个:
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
- 键名必须是
repo.packagist,不是repos.packagist(后者是旧版,新版会静默忽略) -
composer是 type 值,必须显式写出,不能省略 - URL 末尾的
/不能丢,漏掉会导致部分 Composer 版本返回 404
验证是否真生效:composer config -g repo.packagist 输出应为 {"type": "composer", "url": "https://mirrors.aliyun.com/composer/"};如果还看到 Repo packagist.org is default,说明被项目级 composer.json 里的 repositories 覆盖了。
腾讯云/阿里云/中科大镜像选哪个?先看 DNS 和本地网络
没有绝对最快的镜像,只有最适合你当前网络环境的那个。南方用户偶尔遇到 mirrors.cloud.tencent.com 解析不稳定,北方用户可能发现中科大源延迟更低。
临时验证某个镜像是否可用,别动全局配置:
- 单次命令走腾讯云:
composer install -r https://mirrors.cloud.tencent.com/composer/ - 彻底绕过所有已配仓库(含项目级):
composer update --repository-url=https://mirrors.ustc.edu.cn/composer/ - 清缓存再试(换源后必做):
composer clear-cache
镜像不是“装完就快”,它只解决网络可达性问题。真正卡在 “Resolving dependencies” 的深层原因,往往是 composer.json 里版本约束太宽或冲突,这时候换镜像也没用——得看 composer why-not xxx 或 composer prohibits。










