你刚试着上传一个文件到你的WordPress的网站而且,没有成功上传,您收到了一条错误消息,说:“对不起,出于安全原因,此文件类型不允许。”

你的第一反应可能是恐慌。你是不是差点把一个损坏的文件上传到你的网站上?这是恶意软件吗?你的网站现在被入侵了吗?

不要担心——虽然这条消息可能看起来不太吉利,但它只是意味着WordPress不支持您试图上传的文件类型。在这篇文章中,我们将检查是什么导致了这个错误消息,并看一些免费和简单的方法来解决它。

使用HubSpot的WordPress网站工具来发展你的业务

例如,假设我试图上传一个AVIF文件到WordPress。AVIF是一种存储压缩图像的图像格式。尽管这种形式有望改变游戏规则图像压缩在美国,它仍然相对较新,因此不是一种流行的文件格式。

WordPress不支持这种文件类型。如果我尝试上传一个AVIF文件,我会收到“对不起,由于安全原因,此文件类型不允许”错误。这是错误在古腾堡编辑器

“对不起,由于安全原因,此文件类型不允许”错误在Gutenberg编辑器

如果你只上传WordPress支持的文件类型,你可能永远不会看到这个错误消息。接下来,让我们回顾一下这些文件类型。

WordPress允许的文件类型

WordPress支持广泛的文件类型,包括最常见的图像、视频、文档和音频格式。这些文件类型也被称为多用途Internet邮件扩展名,或MIME类型。MIME类型可以帮助浏览器找出上传到网页上的内容类型。

例如,如果您上传一个.jpeg文件和.png文件,浏览器将使用它们的MIME类型来确定这两个文件都是图像文件。类似地,如果您上传一个.mp3或.wav文件,MIME类型会向浏览器发出信号,表示这些文件是音频文件。

WordPress支持上传以下文件类型:

图片

  • jpg
  • jpeg
  • . png
  • gif
  • ico

文档

  • . pdf
  • doc, docx
  • .ppt, .pptx, .pps, .ppsx
  • .odt
  • xls, .xlsx
  • .psd

音频

  • mp3
  • .m4a
  • . ogg
  • . wav

视频

  • mp4, .m4v
  • 。mov
  • .wmv
  • .avi
  • .mpg
  • .ogv
  • .3gp
  • .3g2

注意,除了上面列出的文件外,你也可以上传HTML文件到WordPress中。另外,我们不建议直接上传视频到你的WordPress媒体库,因为它们会占用大量的存储空间,并且会减慢你网站的速度。相反,选择一个视频托管服务存储您的视频。

这些文件类型都很常见。但是,您可能希望上传不在此列表中的文件类型。或者,您可能试图上载这些允许的文件类型之一,但仍然得到“对不起,由于安全原因,此文件类型不允许”的错误消息。

在这两种情况下,您都可以采取一些步骤来避免此错误消息。

1.检查文件类型扩展名。

在你开始更改你的WordPress设置或文件之前,检查你要上传的文件的扩展名。也许您在保存文件时不小心更改了扩展名。因此,您看到错误消息的原因不是wp-config.php或functions.php文件的问题,而是您试图以视频格式上传图像。

在下面的例子中,我试图将.jpg文件作为.avi文件上传,结果得到了错误消息。

错误的文件扩展名导致

这是简单的第一步:如果文件扩展名不正确,那么您可以修复它并以正确的格式上传文件。如果正确,继续下一步。

2.更改您的多站点网络设置。

如果你正在运行一个多站点安装-一个共享相同的WordPress安装核心文件的网站网络-然后你可以很容易地添加更多允许的文件类型。

单击,添加文件类型设置>网络设置在仪表盘上,然后向下滚动到上传设置.在旁边的输入栏里上传文件类型,为要上传的文件类型添加扩展名。然后,保存更改。

在WordPress多站点安装的上传设置中添加允许的文件类型

网络中任何站点的用户现在都可以上传这里列出的所有文件类型。

如果你正在运行一个单站点的WordPress安装,你不会在你的设置中有这个选项。您需要尝试以下步骤之一。

3.编辑wp-config.php文件以上传任何文件类型。

如果您想要允许任何和所有的文件类型上传到您的站点,您只需要在您的wp-config.php文件。

这样做相对简单,但作为最佳实践,您应该总是备份您的wp-config.php文件在编辑。即使是文件中的一个小错误也会使你的网站无法访问。

一旦你复制了你的wp-config.php文件,按照下面的步骤允许任何文件类型的上传。

  • 访问文件管理器通过主机控制面板。
  • 打开你的public_html文件夹中。
  • 找到并右键单击wp-config.php文件,然后选择编辑
  • 滚动到文件的底部。
  • 在文件的末尾,你会看到一行:/*这就是全部,停止编辑!快乐的博客。*/.在这一行上面,粘贴以下代码:

定义(“ALLOW_UNFILTERED_UPLOADS”,真正的);

  • 将更改保存到文件中。
  • 退出WordPress,然后重新登录。现在应该允许您上传任何类型的文件。
  • 保存您的更改。现在应该允许您上传新的文件类型。

这是一个相对简单的解决方案,但对每个网站来说都不理想。例如,如果多个用户在你的WordPress站点上上传文件,你可能需要指定哪些文件类型是允许的。在这种情况下,继续阅读。

4.编辑主题的functions.php文件以修改允许的文件类型。

如果希望只允许将某些文件类型上传到站点,则可以使用Upload_Mimes过滤器.方法如下:

  • 访问文件管理器通过主机控制面板。
  • 打开你的wp-content文件夹中。
  • 打开你的主题文件夹中。
  • 找到并右键单击显然也文件,然后选择编辑
  • 滚动到文件的底部,粘贴以下代码:

函数cc_mime_types(美元假唱){

//新的允许mime类型。

哑剧演员(的svg)美元=“图像/ svg + xml”;

$交警[' svgz '] =“图像/ svg + xml”;

返回$哑剧演员;

Add_filter ('upload_mime ', 'my_custom_mime_types');

注意,上面的代码允许SVG和SVGZ文件.您可以根据要上传的文件类型,在此代码片段中更改或添加MIME类型。

高级用户向function .php或wp-config.php文件中添加代码不会有问题,但初学者可能会有问题。在这种情况下,您可以使用WordPress插件

5.安装一个插件来添加更多允许的文件类型。

如果你不想编辑你的wp-config.php显然也然后你可以使用插件在你的网站上添加允许的文件类型。

WP添加Mime类型文件上传类型通过WPForms是两个这样的插件。虽然这两个插件都是免费的,并且得到了很高的评价,但是文件上传类型插件对初学者来说更友好。按照以下步骤使用它:

  • 安装和激活WPForms插件的文件上传类型。
  • 设置,点击文件上传类型
  • 选中要上传的文件类型旁边的复选框。这个列表很长,但你可以使用右上角的搜索栏搜索你的扩展。如果你的扩展名不在列表中,你可以在底部添加你自己的自定义文件类型。
  • 当完成时,单击保存设置.现在应该允许您上传新的文件类型。

通过WPForms插件使用文件上传类型添加更多允许的文件类型

6.联系您的主机提供商。

如果您已经尝试了上述所有步骤,仍然得到错误消息,请联系您的WordPress托管提供商支持团队并描述你的问题。

可能你的提供商对你可以上传的文件类型有比WordPress默认的更严格的限制。在这种情况下,上述步骤不会解决“对不起,由于安全原因,此文件类型不允许”的错误,但您的提供商的客户支持可能可以。

保护您的文件上传

尽管有一些方法可以绕过“对不起,由于安全原因,此文件类型不允许”错误,但这并不意味着您应该忽略它WordPress网站可能遇到的安全问题.WordPress限制你可以上传的文件类型,因为允许任何类型的文件会让机器人和黑客更容易在你的网站上放置恶意软件。

这就是为什么我们建议您指定您希望允许哪些文件类型,以避免您的网站对任何类型的文件开放,并考虑防止角色较低的用户上传文件到您的网站。

此外,只上传从合法来源下载的插件和主题文件,因为这些文件是WordPress网站被入侵的最常见原因。而且,定期扫描恶意软件有害的代码可能已经发现它的方式通过上传。

想了解更多保护网站免受黑客攻击的方法,请参阅我们关于WordPress安全性的完整指南

在WordPress中上传文件类型

“对不起,由于安全原因,此文件类型不允许”的错误可能会让站点管理员和用户感到沮丧。好消息是,以上的步bob官网官方网站骤既可以解决这个错误,也可以让你在不损害WordPress站点安全的情况下控制你可以上传的文件类型。

编者按:本文最初发表于2021年1月,并已进行了全面更新。

在你的WordPress网站上使用HubSpot工具,在不处理代码的情况下连接两个平台。点击这里了解更多。

在你的WordPress网站上使用HubSpot工具,在不处理代码的情况下连接两个平台。点击这里了解更多。

最初发布于2021年10月5日上午7:00:00,更新于2021年10月5日

主题:

WordPress的安全