当我运行一个composer update
时,我得到这个错误消息:
Loading composer repositories with package information
Updating dependencies (including require-dev)
Failed to download psr/log from dist: The zip extension and unzip command are both missing, skipping.
The php.ini used by your command-line PHP is: /etc/php/7.0/cli/php.ini
Now trying to download from source
我需要做什么才能启用zip和unzip命令,以便composer可以下载依赖项?
发布于 2016-12-22 10:18:07
根据您对Linux和PHP版本的不同,它们可能会有所不同。
(sudo) yum install zip unzip php-zip
(sudo) apt install zip unzip php-zip
这是一个非常常见的问题,你可以通过搜索<distro> php <version> zip extension
在网络中找到更多有用的信息。
发布于 2017-01-23 17:52:47
对于使用PHP 5.6的服务器
sudo apt-get install zip unzip php5.6-zip
发布于 2020-02-27 03:53:50
我不想强调这一点,但是如果你在Dockerfile
中工作,你可以通过安装unzip
实用程序来解决Composer的这个特殊问题。下面是一个使用official PHP image安装unzip
和zip
扩展的示例。
FROM php:7.4-apache
# Install Composer
COPY --from=composer /usr/bin/composer /usr/bin/composer
# Install unzip utility and libs needed by zip PHP extension
RUN apt-get update && apt-get install -y \
zlib1g-dev \
libzip-dev \
unzip
RUN docker-php-ext-install zip
上面的内容被亲切地从This is a helpful GitHub issue中提升出来。
https://stackoverflow.com/questions/41274829
复制相似问题