如何修复 “413 Request Entity Too Large” 错误

在构建和维护网站时,我们一定会在这里和那里遇到一些意想不到的 HTTP 错误。 此类问题很难避免,有些问题比其他问题更难解决。

如果遇到“413 Request Entity Too Large”错误,好消息是这个问题可以快速简单地解决——我们只需要重新配置一些服务器。 不,不需要成为技术专家。 让我们学习一下。

什么是 413 Request Entity Too Large 错误?

当客户端请求的大小超过服务器的文件大小限制时,会出现 413 HTTP 错误代码。 这通常发生在客户端尝试将大文件上传到 Web 服务器时,服务器会以 413 错误响应以提醒客户端。

Web 服务器对上传设置大小限制,以防止用户压倒服务器并超出存储权限。 这个限制通常不是问题,常见的网站文件应该在它之下。 但是,特别是大文件上传可能偶尔会超出限制,导致这样的消息:

如何修复 “413 Request Entity Too Large” 错误

虽然我们可以减小上传文件的大小以规避错误,但也可以通过一些服务器端修改来更改文件大小限制。

如何修复 413 Request Entity Too Large 错误

我们的默认上传大小限制将取决于服务器的设置方式。 在本篇文章中,我们将向大家展示如何通过增加 WordPress 设置以及 Apache 或 Nginx 服务器配置的大小限制来修复 413 错误。

所有方法都需要对服务器文件进行一些编辑,因此我们建议在尝试以下步骤之前创建备份。

WordPress

主题和插件是 WordPress 内容管理系统出现 413 错误的常见原因。 幸运的是,有几种方法可以将 WordPress 上传大小限制增加到足以让这些较大的文件通过。 只要不超出托管计划的限制,我们可以尝试以下任何一种方法:

修改 PHP.ini

增加上传限制的最简单方法是修改服务器的 PHP.ini 文件。 根据实际情况更改以下参数的值:

  • max_execution_time (最大上传时间,以秒为单位)
  • upload_max_filesize (最大上传大小,以兆字节为单位)
  • post_max_size (最大post大小,以兆字节为单位)

修改 .htaccess

如果 WordPress 站点托管在 Apache 服务器上,也可以通过 .htaccess 增加服务器的限制,该文件包含许多服务器指令。 请参阅下面的解决方案。

修改 functions.php

也可以尝试通过当前 WordPress 主题的 functions.php 文件来增加大小限制。

如果想让此更改永久生效,我们建议大家先尝试上述方法。 使用这种方法,大家需要在更新或更改当前主题时更新 functions.php

复制下面的代码并将其粘贴到文件末尾

@ini_set( ‘upload_max_size’ , ’64M’ );
@ini_set( ‘post_max_size’, ’64M’);
@ini_set( ‘max_execution_time’, ‘300’ );

此代码将 WordPress 上传和发布的最大允许大小设置为 64 兆字节。 如果需要,大家可以将此数字更改为更大或更小,只要不超过托管计划的存储限制。

它还将上传可以花费的最长时间设置为 300 秒。 也可以随意更改。

Nginx 服务

可以在文件 nginx.conf 中修改 Nginx 服务器设置。 打开此文件并检查指令 client_max_body_size。 然后,将值(以兆字节为单位)更改为最大文件大小。

如果 nginx.conf 中没有看到此指令,可以将其添加到 server 、location 或 http 块的末尾,如下所示:

server {
          ...
          client_max_body_size 64M;
}

这允许上传 64 兆字节。 将此数字按照自己的需要进行设置,保存文件,然后重新加载 Nginx 以使更改生效。

Apache 服务

通过更新 .htaccess 文件来更改 Apache 服务器的大小限制,如下所示:

将以下代码复制并粘贴到 .htaccess 文件的底部:

php_value upload_max_filesize 64M
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300

这样做会将 WordPress 上传和发布的最大允许大小设置为 64 兆字节,并将最大文件上传时间设置为 300 秒。 可以根据自己的实际情况更改这两个值。

依然会有 413 错误?

尝试上述一种或多种解决方案后,在上传大文件时仍可能遇到 413 错误,即使这些文件低于我们的新大小限制。

在这种情况下,问题可能源于 CDN 的服务器或我们的托管服务提供商设置的其他限制。首先,联系托管支持,详细说明问题以及我们迄今为止为解决问题所采取的步骤。可能是在没有意识到的情况下超出了计划的文件大小限制。或者,配置可能无意中导致了另一个错误。

如果使用 CDN 来提高站点的性能,这也可能是大家自己的问题的原因 – 用的 CDN 服务器可能会施加太小的文件大小限制。由于您可能无法直接修改这些服务器的文件,因此请查阅 CDN 提供商的文档或联系产品支持以解决错误。

如果一切都失败了,请考虑上传替代文件、减小当前文件的大小或升级存储计划。如果大家发现自己需要上传大量数据,则很可能有解决方法。

修复 413 错误

虽然 HTTP 错误可能令人沮丧,但许多错误都可以很快解决,包括 413。通过现在找到并解决此问题,我们在构建网站时将少担心一件事。 如果网站允许用户上传他们自己的内容,那么更改上传大小限制也可以解决这个问题——只要确保没有超出托管计划设置的限制即可。

至于最佳选择,我们建议 WordPress 用户尽可能先修改其服务器的 PHP.ini 文件。 否则,请选择与自己的服务器软件匹配的选项。

免责声明:
1.本站所有内容由本站原创、网络转载、消息撰写、网友投稿等几部分组成。
2.本站原创文字内容若未经特别声明,则遵循协议CC3.0共享协议,转载请务必注明原文链接。
3.本站部分来源于网络转载的文章信息是出于传递更多信息之目的,不意味着赞同其观点。
4.本站所有源码与软件均为原作者提供,仅供学习和研究使用。
5.如您对本网站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。
火焰兔 » 如何修复 “413 Request Entity Too Large” 错误