Такая ошибка часто возникает, если ты пытаешься загрузить большой файл. Недавно я столкнулся с ней в одном из моих проектов. Вот как я ее починил.
Если ты используешь nginx как реверс прокси, ты должен знать, что в нем существует ограничение на размер body в POST запросах.
Часто — это 2MB, но бывает и меньше.
В любом случае, если ты уже получил ошибку 413 Request Entity Too Large
, тебе нужно сделать одно из двух:
- уменьшить размер запроса
- увеличить максимальный размер для body в POST запросе
Обычный nginx
Для обычного nginx на Linux, то тебе нужен файл конфигурации в директории /etc/nginx/conf.d
.
Ищи ключ client_max_body_size
.
Если он уже там есть, то можешь просто увеличить его. Например, client_max_body_size 25m;
увеличит максимальный размер загружаемого файла до 25MB.
nginx внутри Docker
Если твой nginx работает внутри докер контейнера, как например jwilder/nginx-proxy
, тогда подход будет немного другим.
Выведи список всех томов (volumes) nginx
контейнера и найди тот, который связан с директорией /var/lib/docker/volumes/nginx_vhost
.
В этом томе, ты найдешь одну папку _data
и файл default
внутри нее.
Просто добавь ту же строку, чтобы увеличить размер тела HTTP запросов:
client_max_body_size 25m;
Если файл default
не существует — создай его. А если 25 мегабайт не хватает, то измени это значение на такое, которое тебе подойдет.