centos7安装php的zip扩展

本文详细介绍了在Linux环境下因缺少php_zip扩展而导致的ZipArchive类无法使用的问题及其解决方案,包括重新编译PHP的zip模块及配置php.ini等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

错误提示:

Strict Standards: Only variables should be passed by reference in /**目录

Fatal error: Class 'ZipArchive' not found in /**目录


原因:出现这个错误说明是程序在调用'ZipArchive' 这个类的时候没有成功,原因是由于在安装php的时候没有增加php zip的支持。


解决办法:

1、在Linux下没有php_zip.dll这个文件(有也不会起作用的),所以需要重新编译一下php的zip模块。具体安装方法如下:

cd /root/tar
wget http://pecl.php.net/get/zip-1.13.5.tgz
tar -zxvf zip-1.13.5.tgz
cd zip-1.13.5
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
sudo make install

2、安装完成,提示扩展所在目录:/usr/lib64/php/modules/,记录下来


3、修改php.ini,如果找不到配置文件,可以输出phpinfo查看,修改一下两点:

1)zlib.output_compression = Off 改为 zlib.output_compression = On

2)增加extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/zip.so


4、重启nginx 或者apache,reload不行,一定要重启

/etc/init.d/nginx restart 

如果是apache,使用service httpd restart


遇到的问题:

最初以为扩展装好之后重载php-fpm即可,于是使用了/etc/init.d/php-fpm reload,不知道为什么重载之后,使用stop不管用了,只能kill掉进程,然后重新start,才可以。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值