Centos7安装PHP扩展ZipArchive

[问题]:php报错,显示找不到ZipArchive扩展。

 [解决]:

1、下载ZIP扩展包(解压后会发现没有 configure 编译配置文件)

wget http://pecl.php.net/get/zip
tar -zxvf zip
cd zip-1.22.1

 2、执行 phpize 来生成 configure文件

(phpize是用来关联php扩展模块的,通过phpize可以建立php的外挂模块,在特定的目录生成相应的configure文件,php官方的说明: http://php.net/manual/en/install.pecl.phpize.php

phpize

这里我出现报错:提示找不到PHP头文件

 需要安装 php-devel包,不过要先看下当前软件库中的 php-devel版本

yum info php-devel

 这里显示是默认的5.4.16版本,那么直接安装即可

yum install php-devel

 完成后再来尝试执行 phpize,发现已经成功生成了 configure 文件

 3、编译安装

先查找一下 php-config 文件所在位置

 配置编译环境并安装

./configure --with-php-config=/opt/remi/php74/root/usr/bin/php-config
make
make install

 这里我又出现报错:提示需要重新安装 libzip ,其实是由于版本太低导致

 查看并卸载当前 libzip 包

rpm -qa |grep libzip
yum remove libzip

 安装1.2.0版本的 libzip 

wget https://nih.at/libzip/libzip-1.2.0.tar.gz
tar -zxvf libzip-1.2.0.tar.gz
cd libzip-1.2.0
./configure
make && make install

查看安装结果,确认安装成功

cat /usr/local/lib/libzip/include/zipconf.h  | grep VERSION

继续回到 zip-1.22.1 包目录下进行编译安装

make时再次出现报错:提示 /usr/local/include下找不到 zipconf.h 文件。

手动复制转移

/usr/local/lib/libzip/include/zipconf.h /usr/local/include

再次进行 make && make install ,终于再无报错,安装完成。

复核结果:

ls -tl /opt/remi/php74/root/usr/lib64/php/modules | head -5
php -m |grep zip

 4、配置php.ini,重启php生效

定位并编辑 php.ini ,在文件内加入 extension=zip.so ,保存。

(特殊情况下还需要指定路径:extension_dir = /opt/remi/php74/root/usr/lib64/php/modules)

 重启生效

systemctl restart php-fpm

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值