(Class 'ZipArchive' not found )linux apache 添加 zip模块
linux apache 添加 php的zip模块,解决phpexcel 导出时提示 Class 'ZipArchive' not found 的问题,自己按照网上的方法安装了很久,网上方法普遍不是太全没有给出一些常见的错误解决办法,经过自己总结的安装过程以及容易出错的地方和解决办法,整理成本文,系统环境为centos 6.5+apache2.4.7+php5.5.9,希望会对大家有所帮助.
·
网站迁移到linux平台后 phpexcel 导出的时候提示错误 Class 'ZipArchive' not found
原因:是因为php没有安装zip模块
解决办法:安装zip模块
解决过程:
获取到zip包
wget http://pecl.php.net/get/zip
解压zip包并进入
tar -zxvf zip
cd zip-1.x.x
这是一个条命令如果提示没有的话可以通过 yum install php-devel方式安装,然后执行phpize。
phpize
此时需要获取到本机php-config 的位置,方法也很简单 可以通过phpinfo()函数得到php的安装信息也可以 find / -name php-config
你也许会找到好几个,但是根据自己的安装情况找到对应的目录,之后就是简单的编译,安装。
注意:configure不加参数会出错,执行完make insatall 之后你会得到一个路径,里面有生成好的zip.so
./configure --with-php-config=/usr/local/php5/bin/php/php-config
编译 (我用的是root权限,不是root权限的注意切换)
make
安装 (我用的是root权限,不是root权限的注意切换)
make instal
找到你的php.ini 文件位置
同样可以通过 find / -name php.ini
也可以通过phpinfo();得到php.ini的位置
做三项修改 将extension_dir的目录指向你文件生成的目录,注意如果已经之制定过,建议将zip.so复制到以制定的目录
设置extension=zip.so
extension_dir = /usr/local/lib/php/extensions/
extension=zip.so
设置如下参数,可以先找到参数看是否已经开启,开启后设置值为On
zlib.output_compression = On
至此已经配置完毕通过命令重启apache
service apache2 restart
然后可以在php文件中 写入 <?php echo phpinfo(); ?>访问该文件,查看当前的配置信息,查看zip模块是否安装成功,整个安装过程就是这样,最容易出错的地方是编译(make) 所以一定注意在执行configure的时候配置好参数,至此你的php中的zip模块就已经安装成功,在测试以下excel导出是否有问题。
更多推荐
已为社区贡献1条内容
所有评论(0)