You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

安装guzzlehttp/guzzle时遇unsupported ALPN protocol错误求助

问题解决:Composer安装Guzzle时出现ALPN错误及段错误

核心原因

编译的PHP 7.3版本中curl扩展的ALPN支持存在缺陷,且PHP 7.3已达生命周期结束(EOL),新版本Composer对其兼容性不足,导致请求packagist时触发错误。

解决方案

1. 降级Composer至兼容PHP7.3的版本

PHP 7.3仅支持Composer 2.2.x及以下版本,执行以下命令替换现有composer.phar:

./bin/php -r "copy('https://getcomposer.org/download/2.2.24/composer.phar', 'composer.phar');"

重新执行安装命令:

./bin/php composer.phar require guzzlehttp/guzzle

2. 修复系统curl的ALPN支持

PHP的curl扩展依赖系统curl库,若系统curl未开启ALPN支持会触发该错误:

  • 检查系统curl的ALPN支持:
curl -V

输出中包含ALPN: h2,http/1.1则说明支持;若不包含,需重新编译系统curl(确保依赖openssl 1.0.2及以上版本)。

  • 重新编译PHP时指定正确的curl和openssl路径:
./configure --with-curl=/usr/local/curl --with-openssl=/usr/local/openssl
make && make install

3. 临时禁用Composer的ALPN检测

创建或编辑~/.composer/config.json,添加配置强制禁用ALPN:

{
    "config": {
        "curl.options": {
            "CURLOPT_SSL_ENABLE_ALPN": false
        }
    }
}

之后重新执行Guzzle安装命令。


内容的提问来源于stack exchange,提问作者Lew

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 18:40:21