注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

涅槃

文档收藏

 
 
 

日志

 
 
 
 

phpize增加php模块  

2013-11-06 11:00:32|  分类: php |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

张映 发表于 2010-02-09

分类目录: php

一,phpize的好处

什么时候我们要用phpize呢?我们在安装php时:

'./configure' '--prefix=/usr/local/php' '--with-mysql=/usr/local/mysql' '--with-zlib-dir' '--with-freetype-dir=/usr' '--with-jpeg-dir=/usr' '--with-png-dir=/usr' '--enable-gd-native-ttf' '--with-gd' '--enable-ftp' '--with-iconv' '--with-gettext' '--with-curl' '--enable-fastcgi' '--with-openssl'

后面根的参数是我们要的模块,但是随着工作的需要,我们还要在加些模块,又不想重新编译php,这些我们就可以用phpize了。

二,安装php模块

下面我以soap安装为例子

cd /home/zhangy/php-5.2.6/ext/soap                #ext目录下面放的是php的模块库

/usr/local/php/bin/phpize

#确定php-config文件在不在,调用php-config,安装后.so文件会自动放到extension_dir里面

./configure --enable-soap  --with-php-config=/usr/local/php/bin/php-config

make && make install

安装完后会有这样的东西

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------

Build complete.
Don't forget to run 'make test'.

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

三,查看.so文件,以及修改php.ini

cd /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

ls -al |grep soap

-rwxr-xr-x 1 root  root   763334 Feb  9 10:51 soap.so

vi /usr/local/php/lib/php.ini

在加载模块的地加上一行extension=soap.so

四,重起apache或者phpcgi或者其他



转载请注明
作者:海底苍鹰

地址:http://blog.51yip

不重新编译PHP为PHP安装zlib扩展

广告:我自己写的AKCMS,灵活、小巧、快速、不挑服务器。欢迎站长朋友试用,不收钱不费电

一台服务器,编译PHP时未设置参数,导致缺少zlib扩展,无法执行解压缩,错误信息是:“Fatal error: Call to undefined function gzopen”。

首先找到当初编译PHP时的目录,如果没了就找一个相同版本的解压缩,解压缩到php(假设)目录下,然后以root身份进入php/ext/zlib/目录下

执行phpize,报错:“Cannot find config.m4.”,我找了半天没找到这个文件,但是看到一个类似的“config0.m4”,就cp了一个:

cp config0.m4 config.m4

这个解决方法有点山寨,我也不知道啥意思,为什么多了一个0,反正亲自测了能行。

再执行phpize,又报错:“Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable. Then, rerun this script.”

原来是autoconf不存在,通过yum安装:

yum -y install autoconf

再执行phpize,嗯,再敢报错看我不打断你的狗腿!!这次顺利的执行完了。

# phpize
Configuring for:
PHP Api Version:         20100412
Zend Module Api No:      20100525
Zend Extension Api No:   220100525

在这个目录就生成了一个configure脚本,再执行以下代码获得php-config脚本的位置备用:

# which php-config
/usr/local/bin/php-config(你的电脑上未必是这个结果)

再执行以下代码获得zlib的位置备用:

# find / -name zlib.h
/usr/include/zlib.h

都准备好之后就开始执行配置

./configure --with-php-config=/usr/local/bin/php-config --with-zlib=/usr

注意:--with-zlib=/usr这里不需要把文件目录写全,写到这里就行了,PHP的扩展在编译时都是这个德性,习惯就好了。

然后就是正式的编译和安装了:

make && make install

顺利的话,最终会提示:

Installing shared extensions:     /usr/local/lib/php/extensions/no-debug-non-zts-20100525/

然后在php.ini的最后增加这么一句:

extension=zlib.so

再重启php的CGI或者FastCGI或者php-fpm就可以了,具体重启什么要看服务器通过什么方式运行的PHP。

一切顺利的话,在phpinfo中就可以看到zlib的信息了,这就证明PHP的zlib扩展已经顺利的安装成功了。

本文链接地址:http://yubosun.akcms.com/tech/php-zlib.htm
标签: php  zlib  编译  Linux 


  评论这张
 
阅读(552)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018