PHP源码安装后如何新增模块

本文索引:

  • 情况说明
  • 编译安装前的准备
  • 安装范例
  • 额外情况

情况说明

在很多情况下,之前编译安装php时,有些模块并没有被编译进软件,我们可以在后期根据自己的需要进行编译安装,将某个模块编译进入php。

编译安装前的准备

重新编译需要autoconf包

[root@localhost ftp]# /usr/local/php5/bin/phpize 
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226
Cannot find autoconf. Please check your autoconf installation and the
$PHP_AUTOCONF environment variable. Then, rerun this script.

[root@localhost ftp]# yum install -y autoconf

安装范例

以redis为例(redis通常在lamp中作为缓存使用)

下载redis包(第三方模块包需要下载,php源码包内的ext目录下包含一些常用的模块包)

[root@localhost src]# wget https://codeload.github.com/phpredis/phpredis/zip/develop 

# 下载的develop是一个zip包
[root@localhost src]# mv develop phpredis-develop.zip
[root@localhost src]# unzip phpredis-develop.zip

生成configure文件(前提要安装autoconf)

[root@localhost phpredis-develop]# yum install -y autoconf

[root@localhost phpredis-develop]# /usr/local/php7/bin/phpize 
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303

安装

[root@localhost phpredis-develop]# ./configure --with-php-config=/usr/local/php7/bin/php-config 
[root@localhost phpredis-develop]# make
[root@localhost phpredis-develop]# make install
Installing shared extensions:     /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
# 这个目录时存放so文件的目录

查看

[root@localhost phpredis-develop]# /usr/local/php7/bin/php -i |grep -i extension_dir
extension_dir => /usr/local/php7/lib/php/extensions/no-debug-zts-20160303 => /usr/local/php7/lib/php/extensions/no-debug-zts-20160303
sqlite3.extension_dir => no value => no value

修改PHP配置文件php.ini

[root@localhost phpredis-develop]# vi /usr/local/php7/etc/php.ini
加入一行extension=redis.so


[root@localhost phpredis-develop]# /usr/local/php7/bin/php -m | grep redis
redis

额外说明

php的大部分模块都可以这样进行安装。

有一个需要额外注意:mysqli模块

前文第三步中编译mysqli时编译参数需要额外指定mysql_config文件

[root@localhost mysqli]# ./configure --with-php-config=/usr/local/php5/bin/php-config --with-mysqli=/usr/local/mysql/bin/mysql_config

转载于:https://my.oschina.net/LuCastiel/blog/1590867

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值