【发布时间】:2019-07-22 08:22:20
【问题描述】:
最近我将文件上传到实时服务器上并遇到如下所示的错误,但在我的本地服务器上一切正常。
致命错误:在插件/文档中找不到类“finfo” management/view/add_doc.php on line 71 网站正在经历 技术难点。请检查您的网站管理员电子邮件收件箱 说明。
代码
$file = file_get_contents($url);
$filesize = strlen($file);
$file_info = new finfo(FILEINFO_MIME_TYPE);
$mime_type = $file_info->buffer(file_get_contents($file));
if(in_array($extension, $allowedExts)){
chmod(ABSPATH.'/wp-content/uploads/2019/07/',0777);
$upload = file_put_contents(ABSPATH.'/wp-content/uploads/2019/07/'.$name,$file);
到目前为止,我为消除此错误所做的尝试。
尝试通过 .htaccess 文件启用文件信息,但在执行此操作后获取 500 内部服务器错误页面无法正常工作。我试图将它们添加到 .htaccess 文件的末尾
php_value extension=php_fileinfo.dll
或
php_admin_flag extension=php_fileinfo.dll
解决方案2:我尝试添加ini_set('extension', 'php_fileinfo.so');
启用fileinfo,但添加后仍然出现相同的错误。
解决方案 3: 我试图在公共 HTML 页面的根文件夹中创建一个 php.ini 文件,以用我的覆盖 php.ini 文件,但它仍然无法解决同样的错误。
我的 WordPress 网站位于 public_html 目录的子文件夹中。根目录上有html index.html页面作为登陆页面。
我不知道如何检查它是否启用。我创建了 info.php 文件并添加了 phpinfo() 函数来查看它显示的 PHP 详细信息,但我不知道那里有什么 finfo 如何找到它。尝试搜索但不工作。
我尝试了 Cpanel 访问,但没有成功。我尝试过的方式,我拥有的 PHP 5.6 比 PHP 5.3 更高
我检查了 phpinfo();在配置中,它显示...
--enable-fileinfo=shared'
但是,我还是遇到了同样的错误。
在我的本地主机上,当我使用 phpinfo() 时,它显示 fileinfo 已启用。但在服务器上 phpinfo() 没有显示 fileinfo 可用。
【问题讨论】: