如何通过调整Nginx配置client_max_body_size突破大文件上传限制?
- 内容介绍
- 文章标签
- 相关推荐
本文共计680个文字,预计阅读时间需要3分钟。
遇到413 Request Entity Too Large错误,基本原因是`client_max_body_size`这个值设置得太小了。它控制Nginx接收请求体的最大字节数(例如文件上传)。默认值通常是1MB,如果需要上传更大的文件,就需要调整这个值。
这个参数在哪设?三处位置区别明显
你可以在 Nginx 配置的三个层级中设置 client_max_body_size,作用范围不同:
- http { } 块里:全局生效,影响所有 server 和 location
- server { } 块里:只对该虚拟主机(域名或 IP 对应的服务)有效
-
location { } 块里:仅对匹配该路径的请求起作用(例如
location /upload/)
推荐优先在 server 块里设——既避免影响其他服务,又比 location 更简洁可控。
怎么写?单位和特殊值要记牢
语法很简单:client_max_body_size 100M; 或 client_max_body_size 2G;。支持单位包括 k、m、g(大小写不敏感),不加单位默认是字节。
注意一个实用技巧:设为 0 表示不限制大小(慎用,仅限可信内网或调试环境)。
本文共计680个文字,预计阅读时间需要3分钟。
遇到413 Request Entity Too Large错误,基本原因是`client_max_body_size`这个值设置得太小了。它控制Nginx接收请求体的最大字节数(例如文件上传)。默认值通常是1MB,如果需要上传更大的文件,就需要调整这个值。
这个参数在哪设?三处位置区别明显
你可以在 Nginx 配置的三个层级中设置 client_max_body_size,作用范围不同:
- http { } 块里:全局生效,影响所有 server 和 location
- server { } 块里:只对该虚拟主机(域名或 IP 对应的服务)有效
-
location { } 块里:仅对匹配该路径的请求起作用(例如
location /upload/)
推荐优先在 server 块里设——既避免影响其他服务,又比 location 更简洁可控。
怎么写?单位和特殊值要记牢
语法很简单:client_max_body_size 100M; 或 client_max_body_size 2G;。支持单位包括 k、m、g(大小写不敏感),不加单位默认是字节。
注意一个实用技巧:设为 0 表示不限制大小(慎用,仅限可信内网或调试环境)。

