主页 > 知识库 > 服务器 > Linux/BSD >

Linux下的ZipArchive配置

来源:中国IT实验室 作者:佚名 发表于:2013-04-28 16:50  点击:
今天在Linux底下上传Excel文件时,抛出ZipArchive library is not enabled 的异常。而我在本地的windows下的代码则是运行正常的。 原因是:在Linux下没有php_zip.dll这个文件(有也不会起作用的),所以需要重新编译一下php的zip模块。 在Unix/Linux下的解决
今天在Linux底下上传Excel文件时,抛出“ZipArchive library is not enabled” 的异常。而我在本地的windows下的代码则是运行正常的。
 
      原因是:在Linux下没有php_zip.dll这个文件(有也不会起作用的),所以需要重新编译一下php的zip模块。
     
     在Unix/Linux下的解决办法 :
   
      1、依次运行如下命令:
 
      cd /usr/src 
      wget http://pecl.php.net/get/zip   (默认会在线下载最新版本的)
      tar zxvf zip-1.x.x.tgz   (所下载的包名)
      cd zip-1.x.x 
      /usr/bin/phpize    (对应的phpize路径 find / -name phpize 出来结果/usr/bin/phpize)
      ./configure --with-php-config=/usr/bin/php-config (对应的php-config路径)
      make 
      make instal
 
      2、查看生成的模块路径(安装完之后,屏幕上会提示zip.so的位置):
     cd /usr/lib/php/modules/ (对应的extensions路径 /usr/lib/php/modules/)
 
      3、修改php.ini
      增加 extension=zip.so
    然后同样在php.ini文件中,将zlib.output_compression = Off 改为 zlib.output_compression = On ;
 
      4、最后再重启一下Apache:./apachectl restart ;
     
      这个针对php的zip模块就安装完成了,能够在php中使用ZipArchive类了。
 
      附:在Windows下的解决办法就比较简单了 :
 
     1、在php.ini文件中,将extension=php_zip.dll前面的分号“;”去除
  然后同样在php.ini文件中,将 zlib.output_compression = Off 改为 zlib.output_compression = On ;
 
     2、重启Apache服务器。

    有帮助
    (0)
    0%
    没帮助
    (0)
    0%