Максимальное рекомендуемое значение client_max_body_size для Nginx - PullRequest
0 голосов
/ 27 июня 2018

Какое максимальное рекомендуемое значение client_max_body_size на Nginx для загрузки больших файлов?

Веб-приложение, над которым я сейчас работаю, ожидает загрузку до 100 Мб. Должен ли я установить для client_max_body_size что-то вроде 150 МБ для загрузки в одном запросе или использовать стратегию срезов и отправлять куски по 1 МБ на сервер, сохраняя низкий уровень client_max_body_size?

1 Ответ

0 голосов
/ 27 июня 2018

Это субъективная вещь и зависит от варианта использования. Таким образом, вопрос, который вы должны задать себе: What is the max size beyond which you don't want to allow an upload, затем используйте его.

Следующее, что делают люди, это то, что они просто устанавливают

client_max_body_size 150M;

В конфигурации nginx в блоке сервера. Это на самом деле неправильно, потому что вы не хотите, чтобы люди могли загружать 150M данных всем и каждому URL. У вас будет определенный URL, для которого вы хотите разрешить загрузку. Таким образом, вы должны иметь местоположение, как показано ниже

location /upload/largefileupload {
   client_max_body_size 150M;
}

А для остальных URL вы можете оставить его на уровне 2MB. Таким образом, вы будете менее восприимчивы к обычной атаке ddos ​​(атака загрузки большого тела). Смотрите ниже URL

https://www.tomaz.me/2013/09/15/avoiding-ddos-attacks-caused-by-large-http-request-bodies-by-enforcing-a-hard-limit-in-your-web-server.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...