Загружаешь архив на сайт — бах, 2 мегабайта и привет «413 Request Entity Too Large». PHP и веб-сервер по умолчанию душат тебя малыми лимитами. Исправить можно за 5 минут — если знаешь где крутить.
Главные директивы
В PHP есть два ключевых ограничения:
upload_max_filesize— сколько можно залить одним файлом.post_max_size— сколько можно засунуть в POST-запрос (файлы + поля формы).
Очевидно, post_max_size ≥ upload_max_filesize, иначе форма не взлетит.
Где править
🔹 php.ini
Если ты хозяин сервера, лезешь в php.ini и пишешь:
upload_max_filesize = 50M
post_max_size = 50M
Перезапускаешь сервер — радуешься.
🔹 ini_set()
Если ковыряешь чужой проект без доступа к серверу:
ini_set('upload_max_filesize', '50M');
ini_set('post_max_size', '50M');
Но учти: не всегда срабатывает, если админ всё закрутил.
🔹 .htaccess
Для Apache:
php_value upload_max_filesize 50M
php_value post_max_size 50M
Сохранил — протестил — выдохнул.
🔹 Nginx
У Nginx своя засада:
server {
client_max_body_size 50M;
}
Если не поменяешь — получишь 413. После правок — nginx -s reload.
✅ Итог
Главное правило — проверь всё: и PHP, и веб-сервер. Лимит сработает по минималке. Не вылечишь сразу — потратишь день на разбор, кто кого режет.
Добавил через htaccess все работает
Отлично, сделал все по статье. Теперь ошибок нет :)
Спасибо, полезная статья. Удалось настроить у себя и это помогло больше файлов загружать.
Ciao a tutti vengo dall'italia