任务4 PHP动态扩展模块
一、查看PHP加载了哪些模块
# /usr/local/php/bin/php -m
二、安装一个redis模块
#cd /usr/local/src
#wget http://pecl.php.net/get/redis-2.2.5.tgz
1.下载redis
[root@localhost ~]# cd /usr/local/src/
[root@localhost src]# wget http://pecl.php.net/get/redis-2.2.5.tgz
[root@localhost src]# ls
apr-1.6.5 mysql-5.6.39-linux-glibc2.12-x86_64.tar.gz
apr-1.6.5.tar.gz php-5.6.30
apr-util-1.6.1 php-5.6.30.tar.gz
apr-util-1.6.1.tar.gz php-7.1.6.tar.bz2
httpd-2.4.46 redis-2.2.5.tgz
httpd-2.4.46.tar.gz
2.解压redis
[root@localhost src]# tar -zxvf redis-2.2.5.tgz
3.编译redis
[root@localhost src]# cd redis-2.2.5
[root@localhost redis-2.2.5]# ls
arrays.markdown CREDITS redis_array.c redis_session.c
common.h library.c redis_array.h redis_session.h
config.m4 library.h redis_array_impl.c
config.w32 php_redis.h redis_array_impl.h
COPYING README.markdown redis.c
[root@localhost redis-2.2.5]# /usr/local/php/bin/phpize
[root@localhost redis-2.2.5]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@localhost redis-2.2.5]# make
[root@localhost redis-2.2.5]# make install
4.扩展模块
①查看扩展模块存放目录
==我们可以在php.ini中去自定义该路径 ==
[root@localhost redis-2.2.5]# /usr/local/php/bin/php -i |grep extension_dir
extension_dir => /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226 => /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226
sqlite3.extension_dir => no value => no value
②查看是否有redis.so
make install时编译好的就会放在这个目录里
[root@localhost redis-2.2.5]# ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/
opcache.so redis.so
增加一行配置
[root@localhost redis-2.2.5]# vi /usr/local/php/etc/php.ini //可以放到文件最后一行
extension = redis.so
④重新加载配置-t , graceful
# /usr/local/apache2.4/bin/apachectl -t
# /usr/local/apache2.4/bin/apachectl graceful
⑤查看是否加载了redis模块
[root@localhost redis-2.2.5]# /usr/local/php/bin/php -m | grep redis
redis