413 请求实体过大错误,是一种 HTTP 响应,意思是你发送的内容比服务器能接受的要大。HTTP 400 系列错误一般是客户端的问题,但 413 错误更多是因为上传的内容本身合法,只是服务器限制太严格。
当你遇到 413 错误时,文件甚至还没开始传输,就被服务器拒绝了。新一点的文档里,这个错误被称作“有效负载过大”,更直接地说明了问题——请求内容太大了。不管显示的是 413 还是“实体过大”,问题都是一样的:你的请求超出了服务器的限制。
常见叫法
不同服务器(NGINX、Apache、IIS)和浏览器可能表述不一样:
- 413 请求实体过大:最常见
- 请求实体太大:经典说法
- HTTP 错误 413:通用称呼
- 413 NGINX 请求实体过大:表示是 NGINX 拒绝的
无论名字怎样,解决办法都是一样的——让服务器能接受你要上传的文件大小。

什么时候会出现 413 错误
413 错误一般发生在 POST 请求的时候,常见场景:
- 上传大视频或压缩包
- 安装体积大的 WordPress 主题或插件
- 提交带附件的表单
- 调用 API 发送大数据包
简单来说,这个错误就是服务器在告诉你:“抱歉,你上传的东西太大了。”
为什么会出现 413 错误
1. 服务器上传限制
最常见的原因是服务器对请求体大小有限制。托管公司通常会把这个限制设得很严格,以防有人用大量数据攻击服务器。超过限制,就会出现 413 错误。
2. 文件权限问题
不太常见,但有时候上传目录权限不对,也会触发 413 错误,而不是 403 禁止访问。
3. 服务器资源不足
共享主机环境下,如果资源紧张,服务器也可能拒绝大文件上传。PHP 缓冲大文件时耗尽内存,也会导致 413 错误。这时需要增加 PHP 内存限制,并确保 upload_max_filesize 和 post_max_size 设置合适。
WordPress 中如何解决 413 错误
如果在 WordPress 后台上传文件时遇到 413 错误,可以尝试这些方法:
1. 重置文件权限
文件设置为 644,目录设置为 755。通过 FTP 或 SSH 修改 wp-content 文件夹权限即可。
2. 提高 PHP 上传限制
编辑 php.ini 文件(或创建新的),添加:
post_max_size = 64M
memory_limit = 128M
根据需要可以把 memory_limit 调到 256M 或更高。
3. 修改 functions.php
如果无法访问服务器配置,可以在主题的 functions.php 添加:
@ini_set( ‘post_max_size’, ’64M’ );
@ini_set( ‘max_execution_time’, ‘300’ );
注意:切换主题后设置会失效。
4. 修改 .htaccess
Apache 服务器可以在 .htaccess 文件末尾添加:
php_value post_max_size 64M
php_value max_execution_time 300
php_value max_input_time 300
NGINX 和 Apache 的解决办法
NGINX
NGINX 默认上传限制只有 1MB,需要在配置文件中修改:
修改后重载服务:
Apache
使用 LimitRequestBody 指令控制上传大小:
单位是字节(64MB)。设置为 0 可以取消限制,但不安全。
反向代理
如果 NGINX 做反向代理,Apache 配置再好,超过 NGINX 的 client_max_body_size 也会报 413 错误。确保每一层的限制一致。
如何预防 413 错误
- 压缩优化文件大小
- 分块上传大文件
- 使用 CDN 减轻服务器压力,但注意 CDN 自身限制
- 定期检查服务器和 PHP 配置
常见问题
1. 413 请求实体过大是什么意思?
上传文件超过服务器允许大小时出现,是保护服务器的安全措施。
2. WordPress 如何提高上传大小?
修改 .htaccess、php.ini 或 functions.php 文件,通常 .htaccess 最可靠。
3. NGINX 为什么会报 413?
主要是 client_max_body_size 默认太小。
4. 会影响 SEO 吗?
后台偶尔出现不会影响,但前端频繁出现会影响用户体验,从而间接影响排名。
原创文章,作者:余初云,如若转载,请注明出处:https://blog.jidcy.com/jsjc/2196.html
