php不重新编译添加模块

php不重新编译添加模块

本文以安装mysqli模块为例

一、检查

1:首先保证php-fpm能正常启动

2:查看当前已安装的php模块是否有mysqli

  1. [root@web01 ~]# /application/php/bin/php -m|grep mysql  
  2. mysql  
  3. mysqlnd  
  4. pdo_mysql  

从检查结果看,并没有安装mysqli模块

二、安装

1:进入到php源码包目录下

  1. [root@web01 ~]# cd /server/tools/php-5.5.32/  
  2. [root@web01 php-5.5.32]# ls  

进入ext/mysqli/目录

cd ext/mysqli/

/application/php/bin/phpize #检查环境的

执行./configure --with-php-config=/application/php/bin/php-config #--with-mysqli可加可不加

.......

make && make install

.......

  1. [root@web01 mysqli]# make install  
  2. Installing shared extensions: /application/php-5.5.32/lib/php/extensions/no-debug-non-zts-20121212/  
  3. Installing header files: /application/php-5.5.32/include/php/  

 

#可以看到它会在/application/php-5.5.32/lib/php/extensions/no-debug-non-zts-20121212/目录下生成mysqli.so文件

  1. [root@web01 mysqli]# ls /application/php-5.5.32/lib/php/extensions/no-debug-non-zts-20121212/  
  2. mysqli.so  

三.配置

  1. 修改/application/php/lib/php.ini的配置文件  
  2. [root@Web01~]# find /application/php5.5.38/ -name "php.ini"  
  3. /application/php5.5.38/etc/php.ini  #找出php配置文件php.ini的路径,默认在etc下,需要拷贝至lib  
  4. [root@web01~]# cp /application/php5.5.38/etc/php.ini /application/php5.5.38/lib/php.ini  
  5. [root@web01~]# vi /application/php/lib/php.ini  
  6. 只需要改一处  
  7. 718行的  
  8. ; extension_dir = "ext"  
  9. 修改为  
  10. extension_dir = "/application/php-5.5.32/lib/php/extensions/no-debug-non-zts-20121212/"  
  11. extension = "mysqli.so"  

###如果需要添加其他模块,例如memcache.so,直接添加在后面添加一行extension = "memcache.so"即可

四:重启php-fpm

  1. killall -9 php-fpm  
  2. /application/php/sbin/php-fpm  

检查:

  1. [root@web01~]# /application/php/bin/php -m|grep mysql  
  2. mysql  
  3. mysqli  
  4. mysqlnd  
  5. pdo_mysql  

至此mysqli模块添加完成!

 

文章来源:http://www.qstack.com.cn/archives/93.html

posted @ 2018-06-25 11:04  SSgeek  阅读(746)  评论(0编辑  收藏  举报