Linux下PHP模块/扩展都是采用此方法安装或安装php直接编译进去,PHP的dll模块/扩展文件是Windows下php模块的使用方法,两者是无法通用的

安装前

usr/local/php/bin/php -m

安装前建议先执行 /(此命令显示目前已经安装好的PHP模块)看一下,要安装的模块是否已安装。然后下载当前PHP版本的源码并解压。

大部分php扩展/模块的安装就是三个步骤,在源码目录下执行:

/usr/local/php/bin/phpize

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

make && make install

有些模块可能会稍微有差异,具体看模块的安装文件就可以。

php源码目录

本文以imap和exif模块为例,进入下ext,里面会有大部分模块的源码,这里都是php自带模块,第三方模块的话需要自己找第三方模块的源码。

一、安装imap模块

1、安装imap模块前需要先安装imap所需的库:

CentOS :yum install libc-client-devel

Debian:apt-get install libc-client-dev

2、首先进入php安装目录的ext目录

php的源码目录

比如为:/root/lnmp1.3-full/src/php-5.4.45/

则执行:cd /root/lnmp1.3-full/src/php-5.4.45/ext/一般安装完LNMP php源码都是自动删除了的,需要自己进入src目录下解压。

我们要安装imap模块,执行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

再执行以下命令:[[email protected] imap]#

make && make install

[[email protected] imap]#

执行完返回:

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 = "imap.so"

查找:extension_dir 再下面一行添加上

/etc/init.d/php-fpm restart

保存,执行重启。

在浏览器里面输入http://ip/p.php,打开探针,安装IMAP模块前:

安装IMAP模块后:

二、安装exif模块

安装exif不需要另外安装库,所以省略掉了安装库的步骤。

比如php的源码目录为:/root/lnmp1.3-full/src/php-5.4.45/

cd /root/lnmp1.3-full/src/php-5.4.45/ext/

则执行:

cd exif/

我们要安装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

再执行以下命令:[[email protected] imap]#

make && make install

[root[email protected] imap]#

执行完返回:

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 = "exif.so"

查找:extension = 再最后一个extension= 后面添加上

/etc/init.d/php-fpm restart

保存,执行重启。

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

$exif = read_exif_data ('IMG_0001.JPG');

while(list($k,$v)=each($exif)) {

echo "$k: $v

\n";

}

?>

其中IMG_0001.JPG为照片文件。

未安装exif模块前:

安装exif模块后:

可以读出照片的exif信息。

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

安装其他模块也基本上都是这两种方式,当执行这个的时候是会检查系统上库是否安装上,如果没有安装上就会报错,按错误提示安装相关的库就行。

专题关注:Linux系统一键安装LNMP网站环境

内容介绍:Linux Shell 编写的可以为CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian/Deepin/Aliyun/ Amazon/ Mint Linux VPS 或独立主机安装 LNMP(Nginx/MySQL/PHP)、LNMPA(Nginx/MySQL/ PHP/Apache)、LAMP(Apache/MySQL/PHP) 生产环境的 Shell 程序。同时提供一些实用的辅助工具如:虚拟主机管理、FTP 用户管理、Nginx、MySQL/MariaDB、PHP 的升级、常用缓存组件 Redis、Xcache 等的安装、重置 MySQL Root 密码、502 自动重启、日志切割、SSH防护DenyHosts/Fail2Ban、备份等许多实用脚本。

人吐槽 人点赞

猜你喜欢

发表评论

用户名: 密码:
验证码: 匿名发表

你可以使用这些语言

查看评论:Linux下PHP模块/扩展都是采用此方法安装或安装php直接编译进去,PHP的dll模块/扩展文件是Windows下php模块的使用方法,两者是无法通用的