You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

EC2实例Amazon Linux系统Nginx 413请求实体过大问题求助

解决Nginx上传大文件报413 Request Entity Too Large的具体步骤(Amazon Linux环境)

一、修正Nginx配置的核心问题

你之前的配置漏了单位,Nginx里client_max_body_size 100会被解析成100字节,完全达不到100MB的需求,这是关键错误。按以下步骤修改:

  1. 打开Nginx主配置文件:
    sudo nano /etc/nginx/nginx.conf
    
  2. 在http { ... }代码块内添加一行(可放在server_tokens off;这类配置附近):
    client_max_body_size 100M;
    
    • 如果只想给特定站点生效,找到对应站点的配置文件(通常在/etc/nginx/conf.d/目录下,比如default.conf),在server { ... }块内添加上述配置即可。
  3. 按Ctrl+O保存,Ctrl+X退出编辑器。

二、验证配置语法正确性

修改后先别着急重启,先检查配置有没有语法错误:

sudo nginx -t

如果输出nginx: configuration file /etc/nginx/nginx.conf test is successful,说明配置没问题;如果报错,根据提示修正(比如括号不匹配、拼写错误等)。

三、正确重启Nginx服务

Amazon Linux不同版本的服务命令略有区别,选对应命令执行:

  • Amazon Linux 2 或更高版本:
    sudo systemctl restart nginx
    
  • Amazon Linux 1:
    sudo service nginx restart
    

重载(reload)有时候可能不会完全加载新配置,直接重启更稳妥。

重启后检查服务状态,确保Nginx正常运行:

# Amazon Linux 2+
sudo systemctl status nginx
# Amazon Linux 1
sudo service nginx status

四、排查其他可能的限制

如果上述步骤做完还是报413,检查以下内容:

  • 若Nginx后端有应用(比如PHP、Node.js),应用自身可能有上传大小限制:
    • 以PHP为例:修改/etc/php.ini里的upload_max_filesize = 100M和post_max_size = 100M,然后重启PHP-FPM服务(sudo systemctl restart php-fpm)。
  • 确认EC2实例的磁盘空间足够存放上传的文件,避免因磁盘满导致的间接报错。

五、测试上传效果

用curl命令快速测试(替换为你的实际文件路径和上传接口):

curl -X POST -F "file=@/path/to/your-100MB-file" http://你的EC2公网IP/上传接口路径

如果没有返回413错误,说明配置生效。

内容的提问来源于stack exchange,提问作者Rajat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 17:10:36