两种安装PHP扩展的方式(linux)

1.编译安装

http://pecl.php.net/ 在php官方扩展的网站下 搜索相关的扩展(windows下要注意版本和系统位数以及是否是线程安全)

②解压扩展包(tar -zxvf 扩展包名 )

③生成configure文件 (进入解压目录,执行:php安装路径/bin/phpize ,一般是/usr/local/php/bin/phpize)

④编译生成.so文件 (./configure --with-php-config=/usr/local/php/bin/php-config)PS:有一些扩展在编译的过程中还需依赖其他的包,则需要加上相应的参数(对应库的位置),不过这样可能还会报一些依赖的错误,你如果觉得烦,则可以使用pecl 方式安装。

⑤编辑php.ini 文件 添加相应的扩展(如:extension=redis.so),重启php-fpm。

PS:其实很多扩展在php源码包中已经包含,不需要额外去下载,而且源码包中的扩展版本是完全匹配当前php版本的,例如在php7.2.6 中有以下扩展(基本包含了常用扩展):

bcmath
bz2
calendar
com_dotnet
ctype
curl
date
dba
dom
enchant
exif
ext_skel
ext_skel_win32.php
fileinfo
filter
ftp
gd
gettext
gmp
hash
iconv
imap
interbase
intl
json
ldap
libxml
mbstring
mysqli
mysqlnd
oci8
odbc
opcache
openssl
pcntl
pcre
pdo
pdo_dblib
pdo_firebird
pdo_mysql
pdo_oci
pdo_odbc
pdo_pgsql
pdo_sqlite
pgsql
phar
posix
pspell
readline
recode
reflection
session
shmop
simplexml
skeleton
snmp
soap
sockets
sodium
spl
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tidy
tokenizer
wddx
xml
xmlreader
xmlrpc
xmlwriter
xsl
zend_test
zip
zlib

 

如果没有装openssl的扩展,通过pecl方式去安装扩展还是会报错的:

Cannot find config.m4. Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module

通过源码包安装扩展的方法:

①进入源码包

cd /usr/source/php-7.2.6/ext/openssl/

②执行phpize

/usr/local/php/bin/phpize 

有可能出现:Cannot find config.m4.
Make sure that you run '/usr/local/php/bin/phpize' in the top level source directory of the module

解决方法:cp ./config0.m4 ./config.m4

③configure

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

标红的为扩展名称

④make

⑤make install

⑥编辑php.ini文件 打开或新增扩展 ,linux下为xxxx.so

⑦重启php-fpm

 

2.pecl 方式安装

①先检查/usr/local/php/bin/ 下面有没有 pecl (确定一下是php安装目录下的pecl,whereis pecl 查看系统中pecl的位置),pear(安装php-pear是为了使用pecl 中的 phpize)如果没有,则用yum安装(yum install php-pear php-devel)

②更新一下pecl库 pecl channel-update pecl.php.net

③安装相应的扩展 pecl install redis (如果没把php的路径加入环境变量,则需要用绝对地址)

④一般通过pecl安装的扩展都自动加入php.ini的配置了,如果通过phpinfo() 或者php-m没有查询到安装的扩展,则把相应的so文件加入到php.ini中(extension=redis.so)再重启php-fpm

⑤ 卸载扩展  pecl uninstall [对应的扩展]

⑥ 安装指定版本的扩展 pecl install [包地址] 参考:https://www.jianshu.com/p/9794351c9533

 

转载于:https://my.oschina.net/renchen/blog/1603157

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值