PHP环境中安装PHP扩展模块[示例]

编译安装php模块json
这里提供在线安装方法,方便简单快捷。
1 http://woyoo.org/index.php/linux/linux-pear-auto-install-json.html

下面介绍编译安装json
1.下载源文件包:
1 wget http://www.aurore.net/projects/php-json/

2.解压
1 tar xvjf php-json-ext-1.2.0.tar.bz2

3.进入目录
1 cd php-json-ext-1.2.0

4.初始化PHP环境
phpize报错了:phpize commend not found
PHP JSON安装之前需要安装phpize

5.这个可以在yum中安装
1 yum -y install php-devel

6.如果还不能完成PHP JSON安装,说明你的编译工具有问题,安装一下就可以了
1 yum -y install autoconf automake libtool

7.运行phpize
(成功了)
1 ./configure
2 make
3 make install

8.查看PHP JSON安装有没有成功
1 find / -name '*json.so'
2 ./usr/lib/php/modules/json.so

说明已经有了

9.修改php.ini
我的是在php.ini 中include一个文件夹 /etc/php.d
在这个文件中添一个json.ini
1 vim json.ini
2 内容如下:
3 extension=json.so

10.重启服务
1 service httpd restart

11.phpinfo()中您将看到


动态添加ftp扩展

# cd /usr/local/src/php-5.2.13/ext/ftp 进入源码目录的相应扩展模块文件夹
# /usr/local/php-5.2.13/bin/phpize 进入编译好的php相关目录,调用phpize程序生成编译配置文件
# ./configure --with-php-config=/usr/local/php-5.2.13/bin/php-config 注意php-config文件要存在
# make && make install

把生成的ftp.so复制到php.ini中extension_dir指定的目录,不过这步系统好像自动做了,注意确认下即可
然后php.ini加上extension=ftp.so
然后将线上的apache重启


今天在安装cacti软件时发现PHP运行环境中少了一个sockets扩展,当初在编译PHP时没有加入--enable-sockets参数,但是现在又要用到,总不可能为了这个扩展而重新安装PHP环境。我们可以用phpize这个工具来安装扩展模块。phpize这个工具位于php安装目录下面的bin目录中。例如我的位于/home/webserver/php5.2.12/bin目录下面。

安装步骤:

1、先进入php解压缩后的源码包中,找到要安装的扩展模块的目录。

[root@redhat5 sockets]# cd /home/soft/php-5.2.12/ext/sockets

在sockets目录下面以绝对路径运行phpize程序,这时会自动生成sockets的configure程序,在sockets目录下面可以看到。

[root@redhat5 sockets]# /home/webserver/php5.2.12/bin/phpize

2、进行编译安装

[root@redhat5 sockets]# ./configure --with-php-config=/home/webserver/php5.2.12/bin/php-config

[root@redhat5 sockets]#make

[root@redhat5 sockets]#make install

执行完make install屏幕上会提示sockets.so存放的路径,然后把它复制到php的extensions目录中,例如我的路径为 /home/webserver/php5.2.12/lib/php/extensions

3、修改php.ini文件

找到extension_dir = "./" 这行,修改为:

extension_dir = "/home/webserver/php5.2.12/lib/php/extensions/"

然后再新增加一行:

extension=sockets.so

4、重启apache即可生效。



简单对象访问协议(SOAP)是一种轻量的、简单的、基于 XML 的协议,它被设计成在 WEB 上交换结构化的和固化的信息。 SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议( HTTP),简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到远程过程调用(RPC)等大量的应用程序。

php已经安装好了,但是现在需要使用这个模块进行开发,如何是好,重新编译php吗?麻烦,再说是生产服务器,也没有胆子敢动。

那就想想别的办法吧,网上找了找,并且测试了一下,成功的布署到生产服务器上!

需要生成一个soap.so,并且到php.ini里面去加载它,并且通过phpinfo()可以找到如下行

Soap Client     enabled

Soap Server   enabled

首先到php原来的安装目录里面(php-5.2.13),进入到ext/soap/的目录下,执行如下(注意路径一致):

/usr/local/php5/bin/phpize

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

make

make install

提示已经安装到:/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/里面了,可以ls查看一下

打开php.ini文件,找到

extension = “memcache.so”    #在这个下面加一行

extension = “soap.so” #注意目录这两个模块都是在同一个目录里面就可以了。

/usr/local/apache/bin/apachectl -k graceful    #不间断重启

这时再打开phpinfo的文件,就可以发现了~

注:如果在运行

/usr/local/php5/bin/phpize

出现如下提示信息

Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20060613
Zend Extension Api No:   220060519
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = “zh_CN.GB2312:en_US:en_US.UTF-8″
    are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
        LANGUAGE = (unset),
        LC_ALL = (unset),
        LANG = “zh_CN.GB2312:en_US:en_US.UTF-8″
    are supported and installed on your system.
perl: warning: Falling back to the standard locale (“C”).

不会影响最后的编译效果,可以顺利编译soap.so文件。
原文:http://www.peifi.com/156.html







300*300
  • 没有相关文章
  • 没有评论
 文章首页关于迷茫时代关于我写意人生
版权所有:迷茫时代 All rights reserved   
执行时间:0.00451 秒