如何解决 WordPress 中的“抱歉,由于安全原因,这个文件类型不受支持”错误

你想在Wordpress中上传 svg、webp 等格式的文件时,系统会提示如下的错误:“抱歉,由于安全原因,这个文件类型不受支持” 。这是因为 WordPress 文件的MIME 类型(也称为“多用途互联网邮件扩展类型”)被限制上传。

MIME 类型解释

MIME 代表多用途互联网邮件扩展类型。浏览器和其他互联网设备使用 MIME 类型来确定与页面关联的内容类型。

例如,如果页面上有一个 .png 文件和一个 .jpeg 文件,浏览器将通过它们的 MIME 类型(而不是它们的文件扩展名),判断这两个文件为图像文件,而不是视频或其他文件类型。

默认情况下,WordPress 在 wp-includes/functions.php 中存储着已注册 MIME 类型的列表。但是,并非所有识别的 MIME 类型都允许在 WordPress 管理仪表盘中上传。

默认支持的文件类型

图片 .jpg
.jpeg
.png
.gif
.ico
文档 .pdf(便携式文档格式;Adobe Acrobat)
.doc、.docx(Microsoft Word 文档)
.ppt、.pptx、.pps、.ppsx(Microsoft PowerPoint 演示文稿)
.odt(OpenDocument 文本文档)
.xls、.xlsx(Microsoft Excel 文档)
.psd(Adobe Photoshop 文档)
音频 .mp3
.m4a
.ogg
.wav
视频 .mp4、.m4v (MPEG-4)
.mov (QuickTime)
.wmv (Windows Media Video)
.avi
.mpg
.ogv (Ogg)
.3gp (3GPP)
.3g2 (3GPP2)
WordPress 默认支持的文件类型

要上传上面未列出的文件类型,有几种方法可以绕过这些限制。

使用插件授权上传其他 MIME 类型

可以安装 WP Extra File Types 插件。设置非常简单,只需选中要允许的文件类型即可。

如何解决 WordPress 中的“抱歉,由于安全原因,这个文件类型不受支持”错误
如何解决 WordPress 中的“抱歉,由于安全原因,这个文件类型不受支持”错误

通过 functions.php 授权上传其他MIME类型

还可以更改当前主题的 functions.php 文件,添加以下代码来允许其他文件类型上传:

add_filter('upload_mimes', 'tbi_upload_mimes');
function tbi_upload_mimes($mimes = array()) {
    $mimes['svg'] = 'image/svg+xml';
    $mimes['ico'] = 'image/x-icon';
    $mimes['webp'] = 'image/webp';
    return $mimes;
}

通过 wp-config.php 解除文件上传格式限制

通过在 wp-config.php 文件中添加以下代码,解除文件上传格式限制:

define('ALLOW_UNFILTERED_UPLOADS', true);

牛期网提醒大家注意,这行代码会允许管理员用户上传所有文件类型。建议采用其他方式来设定上传文件格式。

版权声明:
作者:Daloong
链接:https://www.daloong.cn/?p=625
来源:This is Daloong's blog
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
海报
如何解决 WordPress 中的“抱歉,由于安全原因,这个文件类型不受支持”错误
你想在Wordpress中上传 svg、webp 等格式的文件时,系统会提示……
<<上一篇
下一篇>>