Как исправить ошибку HTTP при загрузке изображений в WordPress

Доброго здравия, друзья!

Сегодня я бы хотел поговорить об ошибках WordPress, а именно как исправить ошибку HTTP при загрузке изображений.

Как исправить ошибку HTTP

Как и на любой платформе, всегда есть досадные ошибки или проблемы, с которыми нужно научиться работать.

Поверьте, я их все уже видел за свои 8 лет создания сайтов на WordPress!

У WordPress определенно есть свои причуды — от белого экрана до ошибок подключения к базе данных.

Но мне он все еще нравится!

Сегодня я собираюсь погрузиться в одну из наиболее распространенных — ошибку HTTP.

Пользователи обычно сталкиваются с этим при попытке загрузить изображения или видео в медиатеку WordPress.

Хотя ошибку HTTP обычно легко исправить, она может быть довольно неприятной, поскольку обычно прерывает ваш рабочий процесс.

Нет ничего хуже, чем потратить 20 минут, пытаясь найти идеальное изображение для своего сообщения в блоге, вы идете загружать его и бац, вы внезапно сталкиваетесь с очень неопределенной ошибкой.

Ниже мы рассмотрим, почему возникает эта ошибка, и что вы можете сделать, чтобы быстро устранить ее и вернуться к загрузке медиафайлов.

Что такое ошибка HTTP в WordPress?

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

К сожалению, в отличие от ошибок браузера, где мы обычно можем ссылаться на код состояния HTTP, ошибки WordPress иногда немного сложнее устранить (особенно если вы не знаете, как включить режим отладки WordPress).

Очень расплывчатая «ошибка HTTP» определенно не поможет вам определить, что может быть не так или даже с чего начать поиск.

Но это потому, что может быть несколько причин сбоя, и WordPress просто не знает почему, поэтому выдает общее сообщение об ошибке (как показано ниже).

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

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

Как исправить ошибку HTTP в WordPress?

По моему опыту, ошибка HTTP WordPress обычно возникает из-за двух причин: первая — это ошибка на стороне клиента или пользователя (ваш сеанс входа в систему, неправильные символы в имени файла и т. д.).

А вторая — проблема или настройка на вашем хостинге WordPress (проблема с сервером, список памяти, сторонний плагин, общие ресурсы регулирования хостинга и т. д.).

Поэтому мы с вами немного погрузимся и в то и другое.

Вот несколько рекомендаций и вещей, которые нужно проверить, чтобы исправить ошибку (отсортированные по наиболее частым причинам, которые мы видим):

1. Обновите страницу

Самое первое, что вам следует сделать при обнаружении ошибки HTTP в WordPress — просто обновить страницу в своем браузере.

Звучит слишком просто, правда?

Что ж, на самом деле это наиболее распространенное исправление, которое я видел. Вот почему:

Во-первых, по какой-то причине ваш браузер мог временно потерять соединение с WordPress, и процесс просто не удалось завершить.

Это может быть из-за вашего интернет-провайдера, временного сбоя в работе вашего хостинга WordPress и т. д.

Если вы обновите страницу и попытаетесь загрузить ее снова, ошибка иногда разрешается сама собой.

Во-вторых, я также видел, что иногда после обновления страницы или возврата в редактор WordPress с другой вкладки он внезапно выбрасывает вас.

Скорее всего, это индикатор того, что срок вашего сеанса входа в WordPress истек.

Вы должны увидеть следующее сообщение:

Время сеанса истекло. Пожалуйста, войдите, чтобы продолжить с того места, где вы остановились.

Время сеанса истекло

Время сеанса истекло

Поэтому, естественно, вы снова входите в систему и снова пытаетесь загрузить свои медиафайлы.

Однако возникает ошибка HTTP.

Это своего рода причуда WordPress.

После того, как вы снова войдете в систему, вам действительно нужно вручную обновить страницу, на которой вы находитесь.

Затем загрузка мультимедиа снова будет работать.

2. Уменьшить или изменить размер файла

Возможно, вам потребуется отредактировать файл изображения, что может повлечь за собой уменьшение размера файла (КБ или МБ) или уменьшение ширины/высоты (в пикселях).

Существует множество сторонних плагинов оптимизации изображений, которые вы можете использовать.

Они все автоматически сделают это за вас (как уменьшение, так и изменение размера), когда ваше изображение загружается в медиатеку.

Я использовал «Imagify» на своих сайтах в течение многих лет без единой проблемы.

Но есть и много других замечательных.

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

Если вы массово оптимизируете изображения локально, это может серьезно повлиять на производительность вашего сайта.

Плагин Imagify для WordPress

Плагин Imagify для WordPress

Можно загружать изображения с высоким разрешением, поскольку WordPress поддерживает адаптивные изображения из коробки.

Фактически, вы, вероятно, захотите, чтобы изображение выглядело четким на дисплеях Retina.

Но если вы не фотограф или бизнес, которому нужны изображения с высоким разрешением, хорошее практическое правило — сохранить конечный размер изображения менее 100 КБ и не более чем в два раза больше ширины div-содержимого вашего веб-сайта.

Кроме того, вам, возможно, придется поиграть с типами файлов PNG и JPG.

Иногда одно может быть намного больше другого, в зависимости от типа изображения.

В зависимости от конфигурации вашего хоста WordPress вы также можете рассмотреть возможность увеличения максимального размера загружаемого файла WordPress.

3. Переименуйте файл изображения

Никогда не помешает попытаться переименовать файл изображения.

WordPress может автоматически добавлять номер в конце, если вы пытаетесь загрузить повторяющееся имя файла, но если это не сработает, попробуйте переименовать файл.

К сожалению, WordPress не позволяет вам переименовать файл уже загруженного файла изображения, поэтому вам нужно будет переименовать его локально и повторно загрузить.

Когда мы загружаем уже существующие изображения, WordPress обычно добавляет -1 или -2 в конце (пример: image-file-1.png, image-file-2.png).

Не забудьте добавить тире, иначе Google прочитает его как одно слово, и это может повредить вашему СЕО.

Кроме того, на всякий случай не загружайте изображения с именами файлов, содержащими специальные символы.

Сюда входят международные языковые символы и символы, такие как апострофы. Прочерки — это нормально.

В приведенном ниже примере на японском сайте вы можете видеть, что используется английский язык для имен файлов, а не специальные символы.

Хотя WordPress может технически поддерживать их, может возникнуть множество других проблем.

Переименовать файл изображения без специальных символов

Переименуйте файл изображения без специальных символов

4. Временно отключите плагины и темы

Если у вас возникают ошибки HTTP, всегда полезно попробовать деактивировать плагины и даже переключить тему WordPress на стандартную, чтобы посмотреть, решит ли это проблему.

Несколько плагинов, которые являются типичными виновниками, включают плагины оптимизации изображений (они напрямую связаны с медиатекой).

А также плагины безопасности, такие как WordFence (эти плагины иногда слишком ограничивают).

Или вы можете просто удалить свою тему WordPress.

Если вы не хотите влиять на ваш действующий сайт, просто клонируйте его в тестовую среду.

Если ошибка WordPress HTTP также возникает на стадии постановки, вы можете быстро деактивировать все свои плагины, чтобы начать сужать ее.

Помните, что вы не потеряете никаких данных, если просто отключите плагин.

Если вы все еще можете получить доступ к своей админ-панели, быстрый способ сделать это — перейти во вкладку «Плагины» и выбрать «Деактивировать» в меню массовых действий.

Это отключит все ваши плагины.

Деактивировать все плагины

Деактивировать все плагины

Если это решит проблему, вам нужно будет найти виновника.

Начните активировать плагины один за другим и попробуйте еще раз загрузить изображение в медиатеку.

Когда вы видите сообщение об ошибке HTTP, вы обнаружили неправильно работающий плагин.

Затем вы можете обратиться к разработчику плагина за помощью или опубликовать заявку в службу поддержки в репозитории WordPress.

Если вы не можете получить доступ к своей панели администратора, вы можете подключиться к серверу по FTP и переименовать папку с плагинами во что-то вроде «plugins_old».

Затем проверьте свой сайт еще раз.

Если он работает, вам нужно будет тестировать каждый плагин один за другим.

Переименуйте папку плагинов обратно в «plugins», а затем переименовывайте каждую папку плагинов внутри, одну за другой, пока не найдете ее.

Вы также можете попробовать сначала повторить это на промежуточном сайте.

Переименовать папку плагина

Переименуйте папку плагина

То же самое и с вашей темой WordPress.

Обычно темы не связаны с медиатекой, но я видел некоторые странные настройки.

Никогда не помешает попробовать переключить вашу тему на тему «Twenty Seventeen» по умолчанию, чтобы посмотреть, исправит ли она это.

Как и в случае с плагинами, вам не нужно беспокоиться о потере текущих настроек темы.

Все это хранится в базе данных WordPress.

5. Спросите поддержку своего хостинга WordPress

Если вы уже пробовали описанные выше действия и по-прежнему получаете ошибку HTTP WordPress, я рекомендую обратиться за помощью к техподдержке своего хостинг-провайдера, прежде чем продолжить.

Многие из дополнительных шагов по устранению неполадок немного сложнее, и часто вы можете попросить техподдержку хостинга сделать или проверить это за вас.

Команда поддержки Beget доступна 24 часа в сутки и 7 дней в неделю в правом нижнем углу панели управления вашего личного кабинета.

 

Поддержка хостинга Beget

6. Увеличьте лимит памяти PHP

Другая причина ошибки HTTP в WordPress заключается в том, что вашему серверу не хватает доступной памяти для успешного завершения процесса фоновой загрузки.

Это очень распространенная проблема с общим хостингом WordPress.

Чтобы исправить это, вам нужно увеличить объем памяти, который может использовать PHP. Рекомендуется 256 МБ.

Предел памяти по умолчанию для клиентов Beget уже установлен в 256 МБ.

Если вы размещаете свой сайт WordPress на Beget, у вас не должно возникнуть проблем с нехваткой памяти.

Увеличьте лимит памяти PHP с помощью «wp-config.php».

Вы можете увеличить лимит памяти PHP, добавив в файл «wp-config.php» следующий код.

Примечание: это может быть перезаписано правилом уровня сервера, установленным вашим хостом WordPress.
define( 'WP_MEMORY_LIMIT', '256M' );

Увеличьте лимит памяти PHP в cPanel

Если ваш хост использует cPanel, вы можете увеличить лимит памяти PHP в двух разных областях.

Первый находится в разделе программного обеспечения.

Нажмите «Выбрать версию PHP».

Нажмите «Перейти к параметрам PHP».

Затем вы можете щелкнуть «memory_limit», чтобы изменить его значение.

Вторая область также находится в разделе программного обеспечения.

Щелкните на инструменте «MultiPHP INI Editor».

Это позволяет вам изменять файл «php.ini».

Просто прокрутите вниз до места, где написано «memory_limit», и введите более высокое значение.

Увеличьте лимит памяти PHP в cPanel

Увеличьте лимит памяти PHP в cPanel

Увеличьте лимит памяти PHP с помощью php.ini

Если вы не используете cPanel, вы также можете редактировать файл «php.ini» напрямую, если у вас есть доступ.

Для этого войдите на свой сайт через FTP или SSH, перейдите в корневой каталог своего сайта и откройте или создайте файл «php.ini».

Если файл уже был там, найдите параметр «memory_limit» и при необходимости измените его.

Некоторые общие хосты могут также потребовать, чтобы вы добавили директиву suPHP в свой файл «.htaccess», чтобы указанные выше параметры файла «php.ini» работали.

Для этого отредактируйте файл «.htaccess», также расположенный в корне вашего сайта, и добавьте следующий код в верхнюю часть файла:

    <IfModule mod_suphp.c>
        suPHP_ConfigPath /home/yourusername/public_html
    </IfModule>

Увеличьте лимит памяти PHP с помощью .htaccess

Этот файл «.htaccess» представляет собой специальный скрытый файл, который содержит различные настройки, которые вы можете использовать для изменения поведения сервера, вплоть до определенного уровня каталога.

Если у вас нет доступа к «php.ini», я предлагаю вам попробовать следующее.

Сначала войдите на свой сайт через FTP или SSH, посмотрите в свой корневой каталог и посмотрите, есть ли там файл «.htaccess».

Если есть, вы можете отредактировать этот файл и изменить значение «php_value memory_limit».

7. Проверьте разрешения для папки загрузок

Обычно, когда возникает ошибка прав доступа к папке, вы должны получить сообщение в WordPress о невозможности записи в каталог.

Однако это может быть не всегда.

Если сайт WordPress был взломан или заражен вредоносным ПО, может возникнуть много проблем с разрешениями.

Основная папка, которая вас интересует — это ваша папка «/wp-content/uploads», так как именно здесь хранятся файлы при загрузке через медиа-библиотеку.

Согласно Кодексу WordPress, у всех каталогов должны быть права «755 (drwxr-xr-x)» или «750».

Вы можете легко увидеть права доступа к папке с помощью FTP-клиента (как показано ниже).

Вы также можете обратиться в службу поддержки хостинга WordPress и попросить их быстро предоставить разрешения GREP для ваших папок и файлов, чтобы убедиться, что они настроены правильно.

Убедитесь, что если вы вручную обновляете разрешения для этой папки, вы отметите как параметр «Перенаправить во вложенные подкаталоги», так и «Применить только к каталогам».

Права доступа к каталогу WordPress uploads

Права доступа к каталогу WordPress «uploads»

8. Перейти к последней версии PHP

WordPress официально рекомендует PHP 7.3 или выше.

Если вы не используете это, значит, вы ниже минимальных требований, установленных разработчиками CMS.

Я всегда рекомендую использовать последние и поддерживаемые версии PHP, так как они обеспечивают лучшую безопасность и производительность, включая исправления ошибок и функции, которые необходимо исключить.

Я видел, как более старые версии PHP способствуют возникновению всевозможных ошибок, включая печально известную ошибку HTTP WordPress.

В Beget вы можете легко перейти на PHP 7.4 всего одним щелчком мыши на панели управления.

Перейти на PHP 7.4

Перейти на PHP 7.4

Если ваш хост использует cPanel, у него уже может быть возможность изменить вашу версию PHP.

Просто войдите в cPanel и в категории «Программное обеспечение» нажмите «Выбрать версию PHP».

Выберите версию PHP

Выберите версию PHP

Затем вы можете выбрать доступные вам версии PHP, которые поддерживает ваш хост.

php 7 cpanel

PHP 7 в cPanel

9. Устранение проблем с производительностью с помощью Imagick и общих хостов

WordPress использует два разных модуля PHP для обработки изображений: GD Library и Imagick (ImageMagick).

В зависимости от того, что установлено на вашем сервере, WordPress может использовать любой из них.

Проблема в том, что общие хосты WordPress имеют множество ресурсов, скрытых за кулисами.

Это единственный способ запихнуть столько пользователей на одну машину.

Обычная проблема, с которой сталкиваются люди, заключается в том, что для Imagick (ImageMagick) выделено слишком мало ресурсов.

Хосты ограничивают возможность использования нескольких потоков, что приводит к ошибке HTTP WordPress.

Вы можете добавить следующий код в верхнюю часть своего файла «.htaccess», изменив значение ограничения потока на более высокое.

MAGICK_THREAD_LIMIT 1

Другой вариант — указать WordPress использовать библиотеку GD вместо Imagick. Вы можете сделать это, просто добавив следующий код в файл «functions.php» вашей темы.

    function wpb_image_editor_default_to_gd( $editors ) {
    $gd_editor = 'WP_Image_Editor_GD';
    $editors = array_diff( $editors, array( $gd_editor ) );
    array_unshift( $editors, $gd_editor );
    return $editors;
    }
    add_filter( 'wp_image_editors', 'wpb_image_editor_default_to_gd' );

Буду откровенен. Если вам нужно настроить такие вещи, пора перейти на новый хост WordPress.

Обычно нет таких сумасшедших ограничений, и по большей части вы ограничены только работниками PHP.

Вам как владельцу веб-сайта не следует беспокоиться об этих вещах.

10. Удалить путь к пользовательской библиотеке мультимедиа

Вполне возможно, что путь к вашей медиа-библиотеке настроен неправильно.

Обычно я вижу это, когда пользователи переносят свой локальный сайт разработки в рабочую среду.

Если вы посмотрите «Медиа» в разделе «Настройки» на панели инструментов WordPress и увидите в списке значение пути к файлу, удалите его и нажмите «Сохранить изменения».

Вы хотите, чтобы ваши медиафайлы хранились в папке «/wp-content/uploads» по умолчанию.

Ниже показано, как это обычно выглядит.

Если вы не видите путь к библиотеке, значит, у вас все в порядке.

Настройки медиа WordPress

Настройки медиа в WordPress

11. Отключить mod_security

Mod_security — это брандмауэр с открытым исходным кодом, который иногда может вызывать ошибку HTTP WordPress.

Вы можете отключить mod_security, добавив следующий код в начало файла .htaccess.

    <IfModule mod_security.c>
        SecFilterEngine Off
        SecFilterScanPOST Off
    </IfModule>

Если вы используете cPanel, вы также можете отключить его, щелкнув «ModSecurity» в разделе «Безопасность».

cPanel ModSecurity

cPanel ModSecurity

Затем переключите статус с «Вкл.» на «Выкл.» рядом с доменом, на котором вы хотите его отключить.

Отключить mod_security

Отключить mod_security

12. Установите подключаемый модуль «Add From Server»

И последнее, но не менее важное: если вы действительно находитесь в затруднительном положении и ничто другое не работает, вы можете установить бесплатный плагин «Add From Server».

Возможно, вы ждете ответа от хостера WordPress или разработчика о том, как исправить ошибку HTTP WordPress.

Add From Server

Плагин WordPress «Add From Server»

Плагин «Add From Server» обычно помогает обойти ошибку и может быть хорошим временным решением, особенно если вы находитесь прямо в середине чего-то важного.

Первоначально он был разработан, чтобы вы могли добавлять очень большие файлы через SFTP.

Важно: этот плагин редко обновляется и может уже не поддерживаться. Используйте на свой страх и риск.

Подведем итог

Как видите, есть несколько разных способов исправить ошибку HTTP в WordPress.

Надеюсь, одно из вышеперечисленных решений сработало для вас, и вы уже вернулись в нужное русло и загружаете свои медиафайлы.

Если вы продолжаете получать эту ошибку снова и снова, возможно, пришло время подумать об обновлении до более качественного хостинга WordPress.

Многие из вышеперечисленных решений — это то, о чем вам не нужно беспокоиться в Beget.

Если вы нашли решение, которого нет в моем списке, оставьте комментарий ниже, и я добавлю его.

До скорых встреч!

Статья была обновлена: 01 августа 2022 года
Оцените статью:
Не понравилосьПонравилось (+1 баллов, 1 оценок)
Загрузка...
vikz
Занимаюсь созданием сайтов на WordPress более 7 лет. Работал в нескольких веб-студиях, да и сейчас работаю. Иногда подрабатываю на фрилансе - как на нашем, так и на зарубежном. Везде зарекомендовал себя очень хорошо. Если нужен сайт на WordPress, шаблон для сайта или лендинг - не стесняйтесь, пишите. Рад буду помочь!
Один комментарий к статье:
"Как исправить ошибку HTTP при загрузке изображений в WordPress"
  1. Sergey: 25.03.2021 в 14:43 Ответить

    Мне вскгда помогала перезагрузка страницы.

Оставьте свой комментарий
Мы рады, что вы решили оставить комментарий. Пожалуйста, имейте в виду, что все комментарии модерируются в соответствии с нашей политикой конфиденциальности, и все ссылки являются "nofollow". Не используйте ключевые слова в поле "Имя". Давайте проведем личный и содержательный разговор, без спама и оскорблений.