首页 > Web开发 > 详细

88.PHP扩展模块安装

时间:2018-03-11 20:51:54      阅读:229      评论:0      收藏:0      [点我收藏+]
PHP扩展模块安装
编译httpd时,有涉及动态和静态模块,PHP也一样有静态与动态之分,之前所涉及到的PHP安装都全部为静态,并没有任何动态的模块,所谓动态,就是一个独立存在的.so文件,在httpd中PHP就是以动态模块的形式被加载的。PHP一旦编译完成后,要想再增加一个功能的话,要么重新编译PHP,要么直接编译一个扩展模块(生成一个.so文件),然后在php.ini中配置一下,就可以被加载使用了。
1、查看PHP加载的模块

[root@zlinux ~]# /usr/local/php/bin/php -m
[PHP Modules]
bz2
Core
ctype
date
dom
ereg
exif
fileinfo
filter
gd
hash
iconv
json
libxml
mbstring
mcrypt
mysql
mysqli
openssl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
Reflection
session
SimpleXML
soap
sockets
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
zlib

[Zend Modules]

2、安装一个PHP扩展模块(redis模块)

[root@aa ~]# cd /usr/local/src/
[root@aa src]# wget https://codeload.github.com/phpredis/phpredis/zip/develop
[root@aa src]# mv develop phpredis-develop.zip
[root@aa src]# unzip phpredis-develop.zip 
[root@aa src]# cd phpredis-develop/
[root@aa phpredis-develop]# /usr/local/php/bin/phpize      //目的是生成configure文件
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.
//报错Cannot find autoconf,需要安装一些autoconf

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

[root@aa phpredis-develop]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@aa phpredis-develop]# make
[root@aa phpredis-develop]# make install
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-zts-20131226/
//make install会把编译好的redis放到这个目录下,该目录为扩展模块存放目录

[root@aa phpredis-develop]# /usr/local/php/bin/php -i | grep -i extension_dir
extension_dir => /usr/local/php/lib/php/extensions/no-debug-zts-20131226 => /usr/local/php/lib/php/extensions/no-debug-zts-20131226
sqlite3.extension_dir => no value => no value
//查看扩展模块目录,也可以在php.ini中修改目录

[root@aa phpredis-develop]# ls /usr/local/php/lib/php/extensions/no-debug-zts-20131226/
opcache.so  redis.so

3、修改PHP配置文件,使扩展模块生效

[```
root@aa phpredis-develop]# vim /usr/local/php/etc/php.ini //添加以下内容

extension = redis.so

[root@aa phpredis-develop]# /usr/local/php/bin/php -m | grep redis //查看是否加载了redis
redis

88.PHP扩展模块安装

原文:http://blog.51cto.com/sdwaqw/2085290

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!