Исправляем ошибку HTTP при загрузке WordPress картинок

Исправляем ошибку HTTP при загрузке WordPress картинокИсправляем ошибку HTTP при загрузке WordPress картинок. Сегодня рассмотрю несколько ситуаций, когда у вас может появиться ошибка HTTP при загрузке фото в WordPress, и заодно расскажу что в этом случае делать. Данная проблема возникает сразу после клика по кнопке «Добавить медиафайл» на странице редактирования поста либо в разделе «Медиафайлов», — как только вы выбираете файл на компьютере, который хотите использовать. При этом в окне загрузчика отобразится фраза «HTTP Error».

К сожалению, Вордпресс не может самостоятельно определить в чем собственно заключается проблема, поэтому и показывает общий ответ. С другой стороны, пользователю это сообщение также ни о чем конкретном не говорит, — ему придется попробовать несколько подходов дабы найти правильное решение задачи.

Исправляем ошибку HTTP при загрузке WordPress картинок

Исправляем ошибку HTTP при загрузке WordPress картинок

Общие методы для HTTP ошибки в WordPress

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

1. Проблема с хостингом

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

Если глюк никуда не делся, надо выбрать какой-то другой файл для добавления: с более простым именем (без спец.символов и русских букв) или вообще не того формата (например, PNG вместо JPG).

Иногда хостеры устанавливают ограничение по весу импортируемых на сайт объектов — 2Мб, 4Мб, 8Мб и т.п. Используйте для повторного теста изображение полегче.

При загрузке картинки в WordPress ошибка HTTP может возникать, когда у определенной директории хостинга нет разрешения на запись. Заходите на FTP в каталог wp-content/uploads/ и дальше смотрите права доступа у нужной вам папки.

Исправляем ошибку HTTP при загрузке WordPress картинок

Исправляем ошибку HTTP при загрузке WordPress картинок

Если у вас в WP-проекте графика размещаются по годам и месяцам, то следует проверять соответствующий адрес, например, wp-content/uploads/2018/10. Добавление файлов на сервер допускается при значении «775» / «777», тогда как «666» или «664» данную процедуру запрещают. В последних двух ситуациях просто меняете права доступа для соответствующей папки.

2. Программная проблема

Бывает, что в определенном конкретном браузере по каким-то мифическим причинам не хотят выполняться те или иные скрипты. То ли в силу старых их версий, то ли из-за установленных дополнений, но так иногда случается. Просто попробуйте другой браузер. Еще одна фишка, связанная с этим же программным обеспечением — очистка локального кэша (желательно тоже проверить).

Второй важный нюанс в этом «подразделе» — старая версия PHP на сервере. Вордпресс, начиная с ветки 3.2 требует минимально PHP 5.2.4. Проверьте/обновите это ПО самостоятельно или обратитесь к своему хостеру за помощью.

3. Классические Вордпресс техники

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

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

Тоже не помогло? ищем выход дальше. Более продвинутые фишки подсмотрел тут.

4. Увеличиваем memory_limit

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

В общем случае вам нужно подправить файл wp-config.php, находящийся в корневом каталоге хостинга. Прописываете в нем строку:

define( 'WP_MEMORY_LIMIT', '256M' );

Думаю, значения 128M для параметра WP_MEMORY_LIMIT также будет достаточно, особенно при использовании базовых модулей/тем. Иногда данный код не срабатывает, — смотрите как еще можно увеличить PHP Memory Limit в WordPress.

5. Библиотека GD Library по умолчанию

Комплект WP CMS содержит 2 графических библиотеки для обработки картинок — Imagick и GD Library. За первой из них разработчики время от времени замечали HTTP ошибки при загрузке WordPress изображений, поэтому рекомендуется указывать инструментом по умолчанию именно вторую.

Для реализации метода в functions.php пишем:

function wp_default_image_editor( $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', 'wp_default_image_editor' );

6. Правка .htaccess

Дополнив немного .htaccess, у вас получится контролировать использование библиотекой Imagick ресурсов сервера. Находите файл в корневом каталоге и через FTP редактируете его, добавляя строку:

SetEnv MAGICK_THREAD_LIMIT 1

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

Если код выше не помог, попробуйте другой:

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

Либо вариант:

# Exclude the file upload and WP CRON scripts from authentication
<FilesMatch "(async-upload.php|wp-cron.php|xmlrpc.php)$">
Satisfy Any
Order allow,deny
Allow from all
Deny from none
</FilesMatch>

На этом, в принципе, все. Начинайте с самых простых подходов, приведенных в начале, а дальше уже придется переходить на более сложные. Конечно, неприятно получать ошибку HTTP при загрузке WordPress фото или картинок, но, как видите, это не критично. Кто знает еще какие-то методы? — делитесь ими ниже.

Просмотров:

Добавить комментарий