使用 NGinx 限制每种类型的文件上传

使用 NGinx 限制每种类型的文件上传

在我的项目中,我将允许用户发送 zip 文件和图像文件(在两种不同的表单帖子上)。

该项目是使用 Play! 框架(不是 PHP)开发的。

如果是图像,我想将上传大小限制为 1MB,如果是 zip,我想将上传大小限制为 10MB。

这可能吗?

我看到了可以执行我所寻找操作的指令client_max_body_size,但是我找不到针对每个 mimetype 应用该指令的方法。

答案1

您可以为图像、zip 文件等创建具有不同 client_max_body_size(或任何您想要的大小)的不同位置。

只需使用:

location ~* ^.+\.(jpg|jpeg|gif) {

client_max_body_size 1m;
...proxy_pass or whatever
}

location ~* ^.+\.(zip|rar) {
client_max_body_size 10m;
...proxy_pass or whatever

}

相关内容