LNMP 环境下的 PHP 编译安装额外模块

 Technique  comment

本文着重介绍了 LNMP 环境(脚本一键部署)下安装 PHP 模块的操作方法

准备工作

查看目前已经安装好的 PHP 模块

# /usr/local/php/bin/php -m

本文以安装 imapexif 模块为例,进入 LNMP 源码目录内。

# cd /root/lnmp1.4/src/php-7.1.7/ext

安装 imap 模块

安装依赖

Debian & Ubuntu

# apt-get install libc-client-dev

Fedora & RHEL & CentOS

# yum install libc-client-devel

编译安装

# cd imap/
# /usr/local/php/bin/phpize

会返回如下信息

Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20060613
Zend Extension Api No:   220060519

构建环境

# ./configure --with-php-config=/usr/local/php/bin/php-config --with-kerberos --with-imap-ssl

编译

# make && make install

执行后若返回

Build complete.
Don't forget to run 'make test'.

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

表示已经成功,再修改 /usr/local/php/etc/php.ini

查找 extension_dir 在下面一行添加上 extension = "imap.so"

保存,执行 /etc/init.d/php-fpm restart 重启。

安装 exif 模块

编译安装

# cd exif/ && /usr/local/php/bin/phpize

会返回如下信息

Configuring for:
PHP Api Version:         20041225
Zend Module Api No:      20060613
Zend Extension Api No:   220060519

构建环境

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

编译

# make && make install

执行后若返回

Build complete.
Don't forget to run 'make test'.

Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/

表示已经成功,再修改 /usr/local/php/etc/php.ini

查找 extension = 后面添加上 extension = "exif.so"

保存,执行 /etc/init.d/php-fpm restart 重启。

测试工作

在 /home/wwwroot/ 下面创建一个 exif.php 的文件,内容如下:

<?php

$exif = read_exif_data ('IMG_0001.JPG');
while(list($k,$v)=each($exif)) {
echo "$k: $v<br>\n";
}

?>
回复