`composer self-update` 报错:'Failed to decode response: zlib_decode(): data error'
服务器环境下的 composer 为 1.5,为确保更新代码没有问题,最好升级到最新版本。
Composer 升级时是无法利用镜像加速下载的,而必须连接到 Composer 国外官网的服务器上下载升级文件,某些时候就会导致升级的速度非常慢甚至失败。 - Packagist / Composer 中国全量镜像
在使用 composer selfupdate/self-update
获取最新版本时,报错了:Failed to decode response: zlib_decode(): data error
。
找个一个Failed to decode response: zlib_decode(): data error - CSDN,里面有个指令 composer diagnose
进行诊断检测的。根据诊断提示做了一些修补工作之后,再次更新 composer 依然失败。
他提供的解决方案中除了步骤二因为是 Ubuntu 没有办法直接设置关闭 ipv6 以外,步骤一修改源地址为 https://repo.packagist.org
和步骤三 php 配置文件 php.ini 都做完了,但执行更新 composer 依然报错。放弃这个方案。
搞了半天没有结果,突然想到,我是为了升级 composer 来着的,最初安装 composer 就很简单,更新不了的话,重新下载最新版本的 composer.phar 文件再替换一下不就好了吗?
下载安装 composer
php -r "copy('https://install.phpcomposer.com/installer', 'composer-setup.php');"
php composer-setup.php
php -r "unlink('composer-setup.php');"
which composer
# /usr/bin/composer
mv /usr/bin/composer /usr/bin/composer.bak
mv composer.phar /usr/bin/composer
composer --version
# version 2.1.3
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。