1.下载源码包

以redis模块为例,切换目录至/usr/local/src下,下载保存源码包

[root@test_01 ~]# cd /usr/local/src/
[root@test_01 src]#  wget https://codeload.github.com/phpredis/phpredis/zip/develop
--2017-12-27 21:52:42--  https://codeload.github.com/phpredis/phpredis/zip/develop
正在解析主机 codeload.github.com (codeload.github.com)... 192.30.255.121, 192.30.255.120
正在连接 codeload.github.com (codeload.github.com)|192.30.255.121|:443... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:228014 (223K) [application/zip]
正在保存至: “develop”

100%[=========================>] 228,014     60.4KB/s 用时 3.7s

2017-12-27 21:52:47 (60.4 KB/s) - 已保存 “develop” [228014/228014])
[root@test_01 src]# mv develop phpredis-develop.zip

2.解压缩源码包

[root@test_01 src]# unzip phpredis-develop.zip
[root@test_01 src]# ls
apr-1.6.3
apr-1.6.3.tar.gz
apr-util-1.6.1
apr-util-1.6.1.tar.gz
httpd-2.4.28
httpd-2.4.28.tar.gz
mariadb-10.2.6-linux-glibc_214-x86_64.tar.gz
mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
php-5.6.30
php-5.6.30.tar.gz
php-7.1.6
php-7.1.6.tar.bz2
phpredis-develop
phpredis-develop.zip

3.编译

由于该扩展模块中不包含configure这个文件,因此无法像安装编译php、apache这样直接编译。

首先需要进行如下操作来生成configure文件:

①安装autoconf这个yum包,否则之后的步骤会出现错误

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

②运行phpize来生成configure

[root@test_01 phpredis-develop]# /usr/local/php/bin/phpize
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226

③编译安装redis模块

[root@test_01 phpredis-develop]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@test_01 phpredis-develop]# make && make install

4.修改php.ini文件

修改/usr/local/php/etc/php.ini配置文件,将redis.so加入扩展模块

extension = redis.so

5.查看redis模块是否存在

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