Centos下,PHP有多种方式来安装拓展, 主要有 包管理式的yum安装、pecl安装, 以及底层的源码编译安装。
包管理式的安装卸载尤为方便,而源码编译式的安装则方便参数调优。
一般的搭建本机开发环境推荐包管理式的安装,节约时间。而线上部署环境则推荐编译安装, 方便调优。
yum安装
##yum方式安装能自动安装拓展的.so动态库,并配置好PHP.ini
#如安装MysqL拓展
yumsearchMysqL|grepPHP#我们搜索到拓展名为PHP-MysqL.x86_64
sudoyuminstallPHP-MysqL#这样PHP-MysqL拓展便安装好了
#如果出现拓展版本和PHP版本冲突问题,可安装如下任意yum源:
sudoyuminstallatomic-release.noarch
sudoyuminstallwebtatic-release.noarch
#这些源提供了其他版本的PHP拓展,同时每个源针对特定拓展都会提供多个版本,你只需安装一个源即可。如:
atomic源下能搜索到5.4版的MysqL拓展atomic-PHP54-PHP-MysqL.x86_64
webtatic源下能搜索到5.5版本的MysqL拓展PHP55w-MysqL.x86_64
pecl安装
#我们需要先从pear官网下载go-pear工具
#这个工具将帮我们同时安装pecl包管理器(管理PHP的C拓展)pear包管理器(管理PHP类库)
wgethttp://pear.PHP.net/go-pear.phar
#安装工具
#安装过程除非特别指定,否则默认将工具安装到/home/用户名/pear/bin目录下
PHPgo-pear.phar
#将工具目录添加到环境变量中
#编辑/etc/profile追加一行配置
exportPATH=$PATH:/home/用户名/pear/bin
#加载环境配置
source/etc/profile
#配置工具的PHP_ini选项,这样安装拓展时pecl工具就能帮我们自动配置PHP.ini文件了
#vim/home/用户名/pear/share/pear/PEAR/Config.PHP
#搜索PHP_ini,default键修改为你的PHP.ini文件路径:
'PHP_ini'=>array(
'type'=>'file','default'=>'/etc/PHP.ini',152)">'doc'=>'locationofPHP.iniinwhichtoenablePECLextensionsoninstall',152)">'prompt'=>'PHP.inilocation',152)">'group'=>'FileLocations(Advanced)',),#确认一下,配置起效
peclconfig-getPHP_ini#配置成功将显示/etc/PHP.ini
#搜索MysqL拓展
peclsearchMysqL
#这时一般会提示我们更新工具,则我们依据提示进行更新
sudopeclchannel-updatepecl.PHP.net
#再次搜索MysqL拓展,成功
peclsearchMysqL
#安装拓展
peclinstallMysqL
源码编译安装
#概略讲解,下次补充
#下载拓展源码,进入源码目录,执行PHPize指令生成configure编译检测脚本,
#执行configure脚本结合参数生成编译配置文件makefile
#make&makeinstall生成该拓展的动态库
#迁移生成的拓展动态库.so文件到PHP.ini中配置好的extension_dir中
#PHP.ini增加一个节区该拓展的配置信息
检查MysqL拓展是否安装成功
PHP-i|grepMysqL
但拓展加载到运行环境中还需要你重启web服务亦或是PHP-fpm