如何解决 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);

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

配置多站点上传设置

如果你的 WordPress 网站开启了多站点模式,可以直接从多站点设置中编辑 MIME 类型:

第 1 步:从 WordPress 管理区域,导航到网络管理>设置>网络设置。

第 2 步:向下滚动到上传设置,并在上传文件类型字段中添加或删除文件类型。

作者:牛奇网,本站文章均为辛苦原创,在此严正声明,本站内容严禁采集转载,面斥不雅请好自为之,本文网址:https://www.niuqi360.com/wordpress/fix-wordpress-file-type-is-not-permitted/

(0)
牛奇网牛奇网
上一篇 2022年1月20日
下一篇 2022年1月20日

相关推荐

发表回复

登录后才能评论