11.32 php扩展模块装安

php动态扩展模块添加

  • 由于业务须要或者编译php的时候少安装了一个模块,咱们如今须要新添加一个模块,那怎么作呢?

查看模块

/usr/local/php/bin/php -m
  1. 第一步:去php的安装目录中/ext/目录下查看有没有 你须要安装的扩展模块的包

好比:zip 这个模块php

[root@linux-129 ext]# cd zip
[root@linux-129 zip]# ls
config.m4   CREDITS   lib             php_zip.c  tests  zip_stream.c
config.w32  examples  LICENSE_libzip  php_zip.h  TODO
  1. 第二步:生成.configure文件
[root@linux-129 zip]#  /usr/local/php/bin/phpize
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.
这里出现一个错误,没有发现autoconf包

安装 autoconflinux

[root@linux-129 zip]# yum install -y autoconf

从新生成.configure文件git

[root@linux-129 zip]#  /usr/local/php/bin/phpize
Configuring for:
PHP Api Version:         20131106
Zend Module Api No:      20131226
Zend Extension Api No:   220131226
  1. 第三步:编译
[root@linux-129 zip]# ./configure --with-php-config=/usr/local/php/bin/php-config
[root@linux-129 zip]# make 
[root@linux-129 zip]# make install
Installing shared extensions:     /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/

这个就是扩展模块存放的目录: /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
[root@linux-129 zip]# ls /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
opcache.so  zip.so
  1. 第四步:加载
[root@linux-129 zip]# vim /usr/local/php7/etc/php.ini  
内容最下面一行或者找到extension字段下一行添加内容:extension=zip.so

  1. 查看扩展模块是否添加成功
[root@linux-129 zip]# /usr/local/php7/bin/php -m|grep zip
zip

若是php源码包安装目录/ext目录下面没有想要的模块安装包,咱们就要去网上去下载 这种扩展模块该在什么地方去下载下来呢?github

php有个专门提供扩展的地方
http://pecl.php.net/
下面安装一个redis的模块 \在lamp架构中,redis被当作一个缓存来使用,redis

  • 步骤:
• cd /usr/local/src/
  • 第一:下载redis源码包
[root@linux-129 src]#  wget https://codeload.github.com/phpredis/phpredis/zip/develop

• mv develop phpredis-develop.zip
• unzip phpredis-develop.zip
• cd phpredis-develop
  • 第二步:生成configure文件
[root@linux-129 phpredis-develop]# /usr/local/php7/bin/phpize        //为了生成configure文件
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303
  • 第三步:编译
[root@linux-129 phpredis-develop]# ./configure --with-php-config=/usr/local/php7/bin/php-config
[root@linux-129 phpredis-develop]# make
[root@linux-129 phpredis-develop]# make install
Installing shared extensions:     /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/

存放扩展模块的目录   /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
/usr/local/php/bin/php -i |grep extension_dir    //查看扩展模块存放目录,咱们能够在php.ini中去自定义该路径

[root@linux-129 phpredis-develop]# ls /usr/local/php7/lib/php/extensions/no-debug-zts-20160303/
opcache.so  redis.so  zip.so
  • 第四步:加载扩展模块
[root@linux-129 phpredis-develop]# vim /usr/local/php7/etc/php.ini  //增长一行配置(能够放到文件最后一行)
extension = redis.so

相关文章
相关标签/搜索