上传后图片/附件异常
故障原因
由于安全限制,基于PHP编写的PESCMS系列软件将逐步对上传功能进行安全升级。不少用户的PHP运行环境可能没有安装fileinfo扩展,因此将会导致上传后图片无法正常显示或者附件无法下载。
若您出现上传图片/附件异常,请优先检查PHP是否开启了fileinfo扩展。
https://www.php.net/manual/zh/book.fileinfo.php
点击上方链接,可以查看PHP fileinfo扩展的安装等信息。或者执行如下命令可以快速查看是否安装fileinfo扩展
php -m | grep fileinfo
若成功返回fileinfo,表示已安装。
LNMP一键安装包用户
如果您是LNMP一键安装环境,若没有启用fileinfo扩展,您们可以打开PHP官网,找到对应版本的PHP安装包并解压,源码包中的ext目录里面一般带有 fileinfo的扩展安装包。
下面是一个示例,具体请根据实际情况执行。PHP版本为7.0.21
,解压在/home/php7.0.21
cd /home/php-7.0.21/ext/fileinfo
编译安装fileinfo
扩展
/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
这些命令会生成fileinfo.so
扩展文件。
修改php.ini
配置
打开php.ini
文件,添加fileinfo
扩展的加载指令:
vi /usr/local/php/etc/php.ini
在文件末尾添加以下内容:
extension=fileinfo.so
保存并退出
重启PHP服务
重启PHP-FPM服务以使配置生效:
lnmp php-fpm restart
验证安装
php -m | grep fileinfo
宝塔用户
宝塔用户比较简单,登录宝塔管理面板,在软件应用中找到PHP,在安装扩展中,找到fileinfo 并安装即可。