The uploaded file exceeds the upload_max_filesize directive in php.ini
Файл больше, чем разрешает PHP: настройка upload_max_filesize задаёт наибольший размер одного загружаемого файла. В PHP по умолчанию это 2 МБ. Поднимите лимит или уменьшите файл.
Содержание 7
Что сделать прямо сейчас
- Узнайте лимит — шаг 1.
- Поднимите его в панели хостинга или в настройках PHP на VPS — шаг 2.
- Если файл — картинка, можно уменьшить её — подробнее.
Что означает ошибка
Сообщение пишет не WordPress, а PHP: он отказался принять файл и передал WordPress код ошибки, а WordPress показал его текстом. У PHP есть несколько таких сообщений:
| Текст | Что случилось |
|---|---|
The uploaded file exceeds the upload_max_filesize directive in php.ini. | Файл больше лимита upload_max_filesize |
The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form. | Файл больше лимита, который задала сама форма |
The uploaded file was only partially uploaded. | Загрузка оборвалась: попробуйте ещё раз |
No file was uploaded. | Файл не выбран или не дошёл до сервера |
Missing a temporary folder. или Failed to write file to disk. | Разбор |
Если файл больше и второго лимита — post_max_size, — WordPress покажет другое сообщение: The link you followed has expired.
Шаг 1. Узнайте лимит
Откройте в админке страницу загрузки медиафайлов — адрес https://example.com/wp-admin/media-new.php. Под полем загрузки написано Maximum upload file size и число — в русской версии по-русски. Это меньшее из двух чисел PHP: upload_max_filesize и post_max_size.
Шаг 2. Поднимите лимит
На обычном хостинге лимит меняют в панели, в настройках PHP сайта, если хостер это разрешает. Если не нашли, где это меняется в панели, напишите в поддержку хостинга: пришлите текст ошибки и адрес страницы.
Этот способ — для VPS. В Ubuntu 24.04 стоит PHP 8.3. Если у вас другая версия, подставьте её номер вместо 8.3 во всех командах — узнать номер можно командой ls /etc/php/. Откройте файл настроек PHP для сайтов:
sudo nano /etc/php/8.3/fpm/php.iniНажмите Ctrl+W, введите upload_max_filesize и нажмите Enter — курсор встанет на строку с этой настройкой. Поменяйте число после знака =. Затем так же найдите строку post_max_size и поменяйте число в ней. Должно получиться, например, так:
upload_max_filesize = 64M
post_max_size = 80MБуква M означает мегабайты. Второе число должно быть больше первого: кроме файла, в запрос входят остальные поля формы. Сохраните файл: в nano — Ctrl+O, Enter, затем Ctrl+X. Перезапустите PHP:
sudo systemctl restart php8.3-fpmЕсли команда ничего не ответила, PHP перезапущен. У nginx свой лимит на размер запроса — client_max_body_size: поставьте его не меньше post_max_size, иначе на большие файлы сервер ответит ошибкой 413. Как это сделать, рассказано на странице Ошибка 413 Request Entity Too Large.
Откройте страницу из шага 1 ещё раз: число должно вырасти. Загрузите файл снова.
Как уменьшить картинку
Фотография с телефона весит несколько мегабайт, а для сайта хватает картинки шириной 1920 точек. Уменьшите её в любом графическом редакторе — на компьютере или онлайн — и сохраните в JPG или WebP. Так файл пройдёт в лимит, а страницы сайта будут открываться быстрее.
Тексты сообщений сверены с исходным кодом WordPress 7.1.3. В русской версии WordPress те же сообщения показаны по-русски — сравнивайте по смыслу.
Источники
- Исходный код WordPress 7.1.3: file.php — тексты ошибок загрузки файлов и запрос данных FTP.
- Исходный код WordPress 7.1.3: media.php — текст Maximum upload file size.
- Справка PHP: ошибки загрузки файлов — UPLOAD_ERR_INI_SIZE, UPLOAD_ERR_NO_TMP_DIR и UPLOAD_ERR_CANT_WRITE.
- Справка PHP: настройки ядра — post_max_size, upload_max_filesize, upload_tmp_dir и memory_limit.
- Файл php.ini-production из PHP 8.3.6 — значения по умолчанию: memory_limit 128M, post_max_size 8M, upload_max_filesize 2M.
Сверено 10 октября 2026 года.
Что почитать дальше
Проверено и обновлено: 10.10.2026