以fileinfo 扩展安装为例:

    1、下载当前php版本源码

    可通过 php.net/download 官网下载

    2、解压下载的源码,并进入扩展目录。

    1. cd ${php 源码的位置}/ext/fileinfo

    3、执行 phpize

    1. ${php 安装目录}/bin/phpize

    phpize 是什么?
    php官方的说明:http://php.net/manual/en/install.pecl.phpize.php
    phpize 是用来扩展 php 扩展模块的工具,通过 phpize 可以建立 php 的外挂模块,比如你想在原来编译好的 php 中加入 memcached 或者 ImageMagick 等扩展模块,均可以使用 phpize。

    返回信息如下:

    1. Configuring for:
    2. PHP Api Version: 20151012
    3. Zend Module Api No: 20151012
    4. Zend Extension Api No: 320151012

    4、编译 fileinfo

    1. ./configure --with-php-config=${php 安装目录}/bin/php-config
    2. make && make install

    编译成功大概输出如下:

    1. Build complete.
    2. Don't forget to run 'make test'.
    3. Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/

    其中,Installing shared extensions 的内容就是您的扩展存放位置。

    也可通过如下命令得到:

    1. ${php 的安装位置}/bin/php-config --extension-dir

    5、填写扩展配置:

    复制粘贴,修改 extension 目录为您自己的 php 扩展存放目录即可。

    修改 ${php 的安装位置}/etc/php.ini文件

    查找:extension = 再最后一个extension= 后面添加上extension = “fileinfo.so”

    但要注意extension-dir的目录配置,若与上面不一致可以用绝对路径

    1. extension = {php 扩展存放目录}/fileinfo.so

    6、 重启 php-fpm 进程

    service php-fpm restart

    phpinfo 中将会显示安装的 fileinfo 信息:

    .php 扩展安装方法 - 图1

    也可用 php -m 命令查看已安装扩展

    注意:

    如果要安装的扩展在php源码ext目录中没有,那么这个扩展需要到 http://pecl.php.net 搜索下载

    下载扩展包,解压,进入扩展包目录,再从上述phpize那一步开始执行。在执行 ./configure 时不同的扩展包可能有不同的配置,要注意,查一下