• 对于注定会优秀的人来说,他所需要的,只是时间----博主
  • 手懒得,必受贫穷,手勤的,必得富足----《圣经》
  • 帮助别人,成就自己。愿君在本站能真正有所收获!
  • 如果你在本站中发现任何问题,欢迎留言指正!
  • 宝剑锋从磨砺出,梅花香自苦寒来!
  • 本站开启了防爆破关小黑屋机制,如果您是正常登录但被关进小黑屋,请联系站长解除!

给php-7.1.5添加扩展fileinfo

迎刃而解 eryajf 6个月前 (05-04) 704°C 已收录 0个评论
本文预计阅读时间 6 分钟

fileinfo这个扩展是php自带的,但是使用lnmp一键安装脚本部署的时候并没有启用这个扩展,今天想要部署一个图床服务需要安装这个扩展。

在网上看了不少的文章,基本上都没有效果。这里记录下。

先来看一下是什么状态:

[root@eryajf ~]$php -i |grep fileinfo
Configure Command =>  './configure'  '--prefix=/usr/local/php' '--with-config-file-path=/usr/local/php/etc' '--with-config-file-scan-dir=/usr/local/php/conf.d' '--enable-fpm' '--with-fpm-user=www' '--with-fpm-group=www' '--enable-mysqlnd' '--with-mysqli=mysqlnd' '--with-pdo-mysql=mysqlnd' '--with-iconv-dir' '--with-freetype-dir=/usr/local/freetype' '--with-jpeg-dir' '--with-png-dir' '--with-zlib' '--with-libxml-dir=/usr' '--enable-xml' '--disable-rpath' '--enable-bcmath' '--enable-shmop' '--enable-sysvsem' '--enable-inline-optimization' '--with-curl' '--enable-mbregex' '--enable-mbstring' '--enable-intl' '--with-mcrypt' '--enable-ftp' '--with-gd' '--enable-gd-native-ttf' '--with-openssl' '--with-mhash' '--enable-pcntl' '--enable-sockets' '--with-xmlrpc' '--enable-zip' '--enable-soap' '--with-gettext' '--disable-fileinfo' '--enable-opcache' '--with-xsl'
fileinfo
fileinfo support => enabled

然后去到源码目录进行重新编译添加:

[root@eryajf ~]$cd /mnt/lnmp1.4-full/src/php-7.1.5/ext/fileinfo/

这时这个目录是无法直接编译的,需要执行以下命令生成编译文件:

[root@eryajf fileinfo]$phpize
Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303

然后进行编译即可:

./configure --with-php-config=/usr/local/php/bin/php-config --enable-fileinfo
make && make install

如果执行无误,则会在最后输出一个目录。

[root@eryajf min-wiki]$ls /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303
fileinfo.so  opcache.a  opcache.so

可以看到这里已经生成了需要的so文件。

接着配置php.ini进行引用:

extension = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/fileinfo.so"

将如上内容添加在文件当中。然后重启即可。

不过在重启的时候可能会遇到下边的报错:

NOTICE: PHP message: PHP Warning: PHP Startup: Invalid library (maybe not a PHP library) ‘fileinfo.so’ in Unknown on line 0

解决办法是回到上边添加一条命令:

$ rm -rf /usr/local/php/lib/php/extensions/no-debug-non-zts-20160303/fileinfo.so
$ make clean
$ ./configure --with-php-config=/usr/local/php/bin/php-config --enable-fileinfo
$ make && make install

然后再重启就能够看到添加成功了。

[root@eryajf fileinfo]$php -m |grep fileinfo
fileinfo

weinxin
扫码订阅本站,第一时间获得更新
微信扫描二维码,订阅我们网站的动态,另外不定时发送WordPress小技巧,你可以随时退订,欢迎订阅哦~

二丫讲梵 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明给php-7.1.5添加扩展fileinfo
喜欢 (0)
[如果想支持本站,可支付宝赞助]
分享 (0)
eryajf
关于作者:
学无止境,我愿意无止境学。书山有路,我愿意举身投火,淬炼成金!

您必须 登录 才能发表评论!