今天在安装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即可生效。

其它模块的安装方法和这个一模一样,不管是php自带的扩展模块还是第三方扩展模块都照这种方法安装即可。

 

转载自:http://www.num123.com/post/90