php安装扩展模块

本文介绍了在不重新编译PHP的情况下,如何安装新的扩展模块,以Redis为例。首先通过wget下载Redis扩展包,然后解决可能遇到的autoconf包缺失问题,接着配置、编译并安装扩展。成功后,将在指定目录找到生成的Redis.so文件,并在php.ini中添加配置,通过php -m检查扩展是否已加载。
摘要由CSDN通过智能技术生成

php扩展模块安装

  • 当php安装好以后,但是到后期因为需求的变更,缺少一个扩展模块,但是又不能重新编译php。可以通过直接编译一个扩展模块(生产一个.so文件),然后在php.ini中配置一下,就可以加载被使用了。查看php加载了哪些功能模块命令:/usr/local/php7/bin/php -m
  • 安装过程。这里以安装redis模块(在LMAP架构下当缓存来使用)为例.
    1.cd /usr/local/src/

2.使用wget来下载redis的包

3.mv develop phpredis-develop.zip //

4 . unzip phpredis-develop.zip //解压缩

5.cd phpredis-develop //切换到该目录下

6./usr/local/php7/bin/phphize //生产configure文件

7.在生产configure文件时,由于缺少autoconf包,所以并不会生产configure文件的yum install -y autoconf

8.再次执行/usr/local/php7/bin/phphize ,一切正常的话,会在该目录下生产configure的一个子目录。

9.配置

./configure --with-php-config=/usr/local/php7/bin/php-config

10 .编译并安装

make && make install 

11.完成后会生成/usr/local/php7/bin/php/extensions/no-debug-zts-20180308/这样的一个以创建日期为子目录名的目录,在这个目录下会存在opcache.so和Redis.so2个文件。或者使用/usr/local/php7/bin/php -i |grep -i extension_dir /查看扩展模块存放目录,也可以在php.ini中去定义该路径。

12.vim /usr/local/php7/etc/php.ini
;extesnion=php_shmop.dll下写入extesnion=redis.so 保存退出

13.查看是否已经加载

/usr/local/php7/bin/php -m |grep redis 
```如果正常,是可以查看到redis的。

14.在/usr/local/php-7.1.6/ext/目录下会存在许多的所谓的模块。

15.如果我们需要的模块是自带源码包的/ext/目录下存在的,那么可以直接进行编译,比如安装zip 直接执行`/usr/local/php7/bin/phpize`

16.接着执行`./configure --with-php-config=/usr/local/php7/bin/php-config`  

17.编译安装





<div class="se-preview-section-delimiter"></div>

make && make install
“`

18.在/usr/local/php7/bin/php/extensions/no-debug-zts-20180308/里面多出一个zip.so的文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值