什么是fileinfo
本模块中的函数通过在文件的给定位置查找特定的 魔术 字节序列 来猜测文件的内容类型以及编码。 虽然不是百分百的精确, 但是通常情况下能够很好的工作。(通俗来讲就是获取文件的MIME信息)。比如在安装苹果maccms10时,就需要安装这个扩展。
安装lnmp一键包时直接编译
这是子方有料推荐并认为最方便的方法,如果是全新的服务器,完全可以这样做。
从LNMP 1.5正式版开始,lnmp管理脚本增加pathinfo选项、lnmp.conf中增加PHP模块fileinfo安装选项和Nginx lua模块安装选项,因此,子方有料觉得我们大可不必自己手动下载源码重新编译,毕竟对小白来说还是比较难理解的。因为子方有料最近刚好重置了服务器,因此通过这个方式进行安装。
通过lnmp.conf安装fileinfo,子方有料的处理思路是,要把作者的一键安装脚本进行拆分,因为直接使用的时候,默认是不安装fileinfo扩展的。因此,子方有料首先下载lnmp1.6的一键包,然后修改lnmp.conf,再执行安装命令。具体如下:
wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz && tar zxf lnmp1.6.tar.gz && cd lnmp1.6
打开/root/lnmp1.6
目录下的lnmp.conf
修改对应的”n”为”y”,并保存退出
Enable_PHP_Fileinfo='y'
./install.sh
整体安装后,可以通过phpinfo查看fileinfo已安装成功
源码编译
如果已经完成了lnmp一键包的安装,基本上就需要通过编译源码进行安装了,这也是子方有料上一次的安装方式。(子方有料验证过再次执行安装命令不可用。或许也可以通过修改脚本,再使用升级的方式,有待测试)
特别提醒,不是每个人都是PHP7.3,比如子方有料的是PHP7.0,那么下面就要相应修改
cd lnmp1.6/src
进入源码目录
tar -xvf php-7.3.6.tar.bz2
解压
cd ext/fileinfo
进入fileinfo源码目录
执行编译安装
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
/usr/local/php/etc/php.ini
打开php配置文件
extension = fileinfo
增加一项,打开扩展
php -m \
检查安装状态,也可以看fileinfo页面