标签:Linux学习
十一周三次课(3月8日)11.32 php扩展模块安装
11.32 php扩展模块安装
编译httpd时,有涉及动态和静态模块,其实PHP也一样有这样的说法。在本章讲述PHP安裝时,所有的模块全部都为静态,并没有任何动态的模块。所谓动态,就是一个独立存在的.so文件,在httpd中PHP就是以动态模块的形式被加载的。PHP一旦编译完成后,要想再增加一个功能模块的话,要么重新编译PHP,要么直接编译一个扩展模块(生成一个.so文件 ), 然后在php.ini中配置一下,就可以被加载使用了。 查看PHP都加载了哪些功能模块 :/usr/local/php7/bin/php -m
下面安装一个redis第三方的扩展模块
在phpredis-develop没有configure文件
/usr/local/php7/bin/phpize //生成configure文件
报错,少了autoconf的包,安装autoconf包:yum install -y autoconf
生成了configure文件
./configure --with-php-config=/usr/local/php7/bin/php-config
make
make install //把编译好的redis.so放到/usr/local/php7/lib/php/extensions/no-debug-zts-20170718/这个目录下面,这个目录也是扩展模块存放目录
/usr/local/php7/bin/php -i |grep extension_dir //查看扩展模块存放目录,我们可以在php.ini中去自定义该路径,默认的就可以了
就是我们上面查看时的目录
还没有加载
编辑配置文件:
vim /usr/local/php7/etc/php.ini //增加一行配置(可以放到文件最后一行)
extension=redis.so
在php源码包里,有个ext目录,在里面有很多自带的模块。可以直接编译不用下载了
进入需要编辑的自带模块目录里,用/usr/local/php7/bin/phpize直接执行
./configure --with-php-config=/usr/local/php7/bin/php-config
make && make install
标签:Linux学习
原文地址:http://blog.51cto.com/415326/2084243