upload_max_output_body_len
upload_max_output_body_len 指令设置了在 NGINX 中由上传文件生成的响应体的最大大小。
NGINX module for handling file uploads
·
httpserverlocationif in locationlimit_except
语法upload_max_output_body_len size;
默认值none
上下文http, server, location, if in location, limit_except
参数1
说明
upload_max_output_body_len 指令是用于处理文件上传的 NGINX 模块的一部分。该指令允许你指定在处理上传文件后生成的响应体的最大允许大小。当生成的输出超过指定限制时,NGINX 将中止响应,并向客户端返回相应的错误信息。这对于防止过度的内存使用和管理带宽至关重要,尤其是在可能上传并处理大文件、从而导致服务器无法高效处理的大型输出响应的场景中。
该指令可以在多种上下文中设置,包括 http、server、location,以及像在 location 中的 if 或 limit_except 这样的条件上下文。这种灵活性允许你在同一 NGINX 配置中对不同路径或服务器块实施不同的限制。该指令接受一个参数,期望为以字节、千字节 (k) 或兆字节 (m) 指定的大小。指定大小时,重要的是确保它与应用处理逻辑的预期输出相符,以避免运行时出现不必要的错误。
配置示例
location /upload {
upload_pass /process_upload;
upload_max_output_body_len 10m;
}⚠
确保指定的值足以满足预期输出;否则,NGINX 将返回错误。
⚠
该指令主要适用于已处理的输出;它可能不会限制原始上传请求体的大小。
⚠
过于严格的限制可能会阻碍合法的文件上传操作和响应。