WordPress Linux

WordPress: ошибка HTTP при загрузке изображения

  • Обновлено
  • Чтение ≈ 4 минуты

Краткий ответ

Ошибка HTTP при загрузке изображений WordPress из-за Imagick, GD и памяти исправляется переключением редактора изображений на GD, ограничением потоков Imagick, проверкой расширений и снижением размера миниатюр.

В этой статье
  1. Особенность этой ошибки
  2. Причины
  3. Проверка и исправление
  4. После изменений
  5. Как понять, что память действительно кончилась
Imagick HTTP error
Ошибка HTTP / Post-processing of the image failed likely because the server is busy or does not have enough resources
По-русскиСбой обработки изображения расширением Imagick или GD.

#Особенность этой ошибки

Эта проблема возникает на этапе обработки изображения: WordPress создаёт миниатюры через Imagick или GD. Если Imagick собран с большим числом потоков или не хватает памяти, процесс падает, и пользователь видит «Ошибка HTTP». Особенно часто это бывает на общем хостинге с жёсткими ограничениями. Лимиты размера файла и права на папку здесь вторичны; если они у вас в порядке, проблема в модуле обработки.

#Причины

Возможная причинаКак узнатьЧто делать
Imagick не хватает ресурсовМногопоточность.Ошибка на тяжёлых файлах.Один поток или GD.
Нет расширения GDНе включено.Невозможно создать миниатюры.Включите в панели.
Слишком большое изображение8000 px.Нехватка памяти.Уменьшайте до 2560 px.
Много размеров миниатюрПлагины/темы.Долгая обработка.Отключите лишние размеры.
Формат не поддерживаетсяHEIC, WebP.Ошибка при загрузке.Преобразуйте в JPG/PNG.
Ограничение процессов хостингаЛимит CPU.Сбои периодически.Свяжитесь с хостингом.

#Проверка и исправление

  1. Посмотрите возможности сервера в разделе «Здоровье сайта»Войдите в WordPress с правами администратора, откройте «Инструменты → Здоровье сайта → Информация» и раскройте раздел, связанный с обработкой изображений или мультимедиа. Запишите доступные модули PHP (GD/Imagick), поддерживаемые форматы и ошибки. Затем попробуйте загрузить небольшое стандартное JPEG-изображение, чтобы отделить проблему формата/размера от полного отказа загрузчика.
  2. Переключите редактор на GDЕсли Imagick падает при обработке, сначала сохраните копию сайта и на тестовой копии добавьте временный фильтр wp_image_editors для выбора GD; в исходном примере он меняет приоритет, но не гарантирует доступность GD. Убедитесь, что расширение GD действительно включено, затем загрузите тот же файл и сравните результат. При неуспехе удалите временный фильтр и смотрите журнал PHP.
  3. Ограничьте потоки ImagickЕсли журнал прямо указывает на нехватку потоков/ресурсов ImageMagick, попросите администратора хостинга проверить лимиты Imagick и доступные средства ограничения параллелизма. Не вставляйте глобальные настройки размера изображений в активную тему ради эксперимента. Для отдельных приложений возможны настройки политики ImageMagick или лимит потоков, но точное место определяется обработчиком PHP и конфигурацией сервера.
  4. Включите отсутствующие расширенияВ панели хостинга откройте настройки PHP для нужного домена → расширения и проверьте доступность gd или imagick, не смешивая с модулями консольного php -m. Включайте только поддерживаемое хостером расширение и перезапускайте обработчик через панель при необходимости. Затем в «Здоровье сайта» повторно проверьте список модулей и загрузите небольшое изображение.
  5. Уменьшите число размеров миниатюрЕсли сбой начинается при генерации нескольких больших миниатюр, на тестовом сайте проверьте, какие размеры создают тема и плагины. Используйте штатные настройки миниатюр или документацию конкретного плагина, а не удаляйте все изображения из uploads. После изменения загрузите новый пробный файл. Перегенерация всех старых изображений может занять много времени и потребовать дополнительного дискового пространства.
  6. Проверьте нехватку памятиПопросите администратора посмотреть PHP error_log на Allowed memory size exhausted во время загрузки. Проверьте выбранный memory_limit именно для веб-PHP; увеличение допустимо только в рамках доступной памяти и лимитов тарифа. Начинайте с уменьшения исходного файла и диагностики ресурсоёмких плагинов, чтобы не увеличивать память до произвольного значения на загруженном сервере.
  7. Попробуйте формат JPG вместо PNG и WebP, если библиотека не поддерживаетЕсли ошибка связана с конкретным форматом, подготовьте копию файла в JPEG или PNG на компьютере и попробуйте загрузить её через «Медиафайлы → Добавить новый». Не переименовывайте .webp в .jpg без конвертации: данные не изменятся. Если JPEG проходит, а WebP нет, проверьте поддержку WebP в действующей версии WordPress и в обработчике изображений на сервере.
  8. Команды для отдельных ситуацийВыберите только подходящий вариант. Это не одна последовательность: часть команд диагностирует проблему, а часть меняет настройки или данные.
    Выберите подходящий вариант — это не команды для последовательного выполнения
    Вариант 1Использовать GD вместо Imagick (добавьте в functions.php дочерней темы или в mu-плагин)
    PHPКоманда
    Использовать GD вместо Imagick (добавьте в functions.php дочерней темы или в mu-плагин)
    add_filter('wp_image_editors', function ($editors) {
    return array('WP_Image_Editor_GD', 'WP_Image_Editor_Imagick');
    });
    Вариант 2Ограничить размер больших изображений и потоков Imagick (fix для общих хостингов)
    PHPКоманда
    Ограничить размер больших изображений и потоков Imagick (fix для общих хостингов)
    add_filter('big_image_size_threshold', function () { return 2560; });
    add_action('init', function () {
    if (class_exists('Imagick')) { Imagick::setResourceLimit(Imagick::RESOURCETYPE_THREAD, 1); }
    });
    Вариант 3Ограничить потоки Imagick переменной окружения (Apache)
    INIКоманда
    Ограничить потоки Imagick переменной окружения (Apache)
    SetEnv MAGICK_THREAD_LIMIT 1
    Вариант 4Проверка расширений GD и Imagick
    Linux · Терминал (Bash)Команда
    Проверка расширений GD и Imagick
    php -m | grep -Ei 'gd|imagick'
    php -r 'print_r(gd_info());'
    php -r 'if (class_exists("Imagick")) { echo Imagick::getVersion()["versionString"], PHP_EOL; }'
    Вариант 5Размеры миниатюр, генерируемые WordPress (WP-CLI)
    Linux · Терминал (Bash)Команда
    Размеры миниатюр, генерируемые WordPress (WP-CLI)
    wp option get thumbnail_size_w
    wp option get medium_size_w
    wp media regenerate --only-missing --yes

#После изменений

Очистите кеш, повторите загрузку и сгенерируйте недостающие миниатюры. Если вы переключились на GD, качество и скорость могут отличаться: проверьте результат. Постоянное решение — выбрать хостинг с адекватными лимитами или VPS, где вы управляете версиями библиотек.

#Как понять, что память действительно кончилась

Включите журнал ошибок WordPress и повторите загрузку. Фраза Allowed memory size of ... bytes exhausted прямо указывает на нехватку памяти, а строка с imagick или gd — на то, где именно. Для оценки: распакованное изображение занимает примерно ширина × высота × 4 байта, поэтому фото 6000×4000 пикселей требует около 96 МБ только для одной копии, а для создания нескольких миниатюр память нужна в несколько раз больше. Поэтому ограничение big_image_size_threshold помогает: WordPress уменьшит оригинал до 2560 пикселей и станет экономнее расходовать ресурсы.

Если загрузка падает на PNG с прозрачностью, проверьте, не включён ли в плагине оптимизации режим конвертации в WebP/AVIF на лету: эти операции требуют больше памяти, чем обычное сжатие JPEG.

Так эту ошибку тоже называют

Источники и обновления

Последнее обновление статьи: 2 ноября 2026. Версии программ и интерфейсы меняются — если шаги не совпадают с вашей версией, сверяйтесь с документацией производителя.