413 request entity too large 解决办法

358 阅读1分钟

发现问题

上传文件出现报错413 request entity too large, 第一反应是找后端,但其实服务端并未限制文件大小。再探,原来是nginx客户端默认的最大请求体是1M

解决问题

修改Nginx配置文件的“client_max_body_size”属性来解决。

cd /etc/nginx
vim conf.d

该属性有三个地方可以配置,不通的地方的作用域不同。

  • 在http节点下(http全局)

    http {
    	# 将nginx代理的所有请求实体的大小限制为1024m
    	client_max_body_size 1024m;
    }
    
  • 在server节点下(server全局)

    server {
    	# 将该服务下的所有请求实体的大小限制为1024m
    	client_max_body_size 1024m;
    }
    
  • 在location节点下(单应用)

    location /test {
    	# 将此路由请求的实体大小限制为1024m
    	client_max_body_size 1024m;
    }
    

修改完nginx配置,执行如下命令

// 检查配置文件是否正确
nginx -t

// 重启nginx服务
nginx -s reload