HTTP error 500 — ошибка на сайте WordPress

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

HTTP error 500 на сайте

Содержание статьи:
  1. Что означает HTTP error 500?
  2. Почему появляется ошибка HTTP error 500 после действий в административной панели WordPress?
  3. Как наладить работу интернет-страницы?
  4. Fatal error: Call to undefined function wp() in /wp-blog-header.php
  5. Очистился файл wp-load.php. Как исправить?
  6. Что сделать, чтобы файл wp-load.php не очищался?
  7. Заражение сайта вирусом. Причина
  8. Как не допустить взлома и заражения веб-ресурса?

Что означает HTTP error 500?

Когда сервер, на котором хранятся файлы сайта, не может обработать запрос, показывается ошибка 500. Что это значит? Во всех случаях причины разнятся. Проблема может возникать из-за неверных настроек сервера; взлома и заражения сайта вирусом; ошибок в одном из файлов темы либо в кодировке плагина; конфликта плагинов; ошибок в файле .htaccess; когда превышен лимит на PHP-память, а также если были изменены файлы ядра WordPress.

Информация
Код ошибки 500, выдаваемый протоколом HTTP по запросу клиента, возникает, как правило, из-за нарушения работы сервера или когда отказывает один из компонентов загрузки.

Почему появляется ошибка HTTP error 500 после действий в административной панели WordPress?

Ошибка 500 — самая частая из всех, возникающая на любом сайте. Поэтому существует множество вариантов решений, в том числе те, что были адаптированы под WordPress. Причиной возникновения HTTP error 500 могут быть неполадки на хостинге либо запланированные технические работы. Поэтому первым делом нужно отправить сообщение в службу поддержки, чтобы специалисты обнаружили либо помогли найти исток проблемы.

Но чаще всего ошибка возникает не по вине хостера и не в результате работы технических специалистов. В первом полугодии 2020 множество сайтов, для которых используется система управления контентом WordPress, оказались подвержены атакам хакеров. Из-за чего стали выходить из строя сразу после того, как администраторы совершали какие-либо действия в админке. Публикация статьи, загрузка медиафайла, удаление или перемещение комментария, обновление профиля пользователя, изменение пароля и прочее нарушало работу веб-ресурса, и красовалась ошибка 500 на сайте.

Как наладить работу интернет-страницы?

В Глобальной сети можно обнаружить множество постов, где описывается, как исправить ошибку HTTP error 500. Однако, как и в 2020, сейчас многие из этих методов не работают, потому что причиной возникновения проблемы с сайтом являются взлом и заражение файлов вирусом, что влияет на работу ядра WordPress. В результате чего самоочищается файл wp-load.php. При этом в логах можно обнаружить указание на ошибку в wp-blog-header.php. Что только запутывает.

Fatal error: Call to undefined function wp() in /wp-blog-header.php

Такое сообщение красуется в файле error_log, расположенном в корневом каталоге зараженного сайта. Причем у одних владельцев интернет-ресурсов ошибка указывается в строке 14, а у других — в 16. В действительности ошибка возникает не в файле wp-blog-header.php. Он остается нетронутым. Она указывает на проблемы с файлом wp-load.php.

Ошибка wp-blog-header.php on line 16

Очистился файл wp-load.php. Как исправить?

Если после любого действия в административной панели WordPress возникает ошибка на сайте — HTTP error 500, следует зайти на хостинг, открыть корневую папку сайта и просмотреть файл wp-load.php. Если он пуст, значит, произошло самоочищение из-за заражения сайта вирусом. Нужно скачать на компьютер актуальную версию WordPress. Какая установлена на сайте, видно в админке в разделе «О WordPress», который легко обнаружить, кликнув по значку CMS, расположенному в левом верхнем углу.

Скачанный архив нужно распаковать. Затем из папки WordPress надо закачать в корень сайта файл wp-load.php, перед этим удалив очищенный от кода файл. То есть, старый надо заменить на новый. После этих действий необходимо изменить права на wp-load.php. Кликнув по файлу правой кнопкой мыши, следует выбрать Change Permissions (в веб-консоли управления сайтом cPanel) и выставить в окошках 400, удаляя проставленные галочки. Изменение прав доступа не позволит файлу самоочиститься.

Изменение прав доступа к файлу wp-load.php

Что сделать, чтобы файл wp-load.php не очищался?

Причиной возникновения 500 ошибки на сайте после любых действий в его административной панели является вирус. Чтобы удалить его, нужно использовать возможности плагина Wordfence Security. Все остальные не находят вредоносной программы, и поэтому невозможно восстановить работу интернет-ресурса — возникают новые ошибки.

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

После проделанной работы следует установить на сайте плагин WP-Optimize и провести с его помощью ревизию базы данных. Плагин выявит неактуальные и неиспользуемые записи от старых плагинов, как и другие. Их все нужно удалить, предварительно сделав резервную копию базы данных.

Когда все зараженные и ненужные файлы сайта будут изменены и удалены, нужно деактивировать Wordfence Security и WP-Optimize и удалить их. Затем необходимо проследовать в корневую папку веб-ресурса, что расположена на хостинге, и удалить оттуда файлы, оставленные обоими дополнениями WordPress. Позже, время от времени рекомендуется проводить проверку сайта на вирусы и очистку базы данных при помощи этих плагинов.

Заражение сайта вирусом. Причина

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

Как быстро заработать в интернете

Как не допустить взлома и заражения веб-ресурса?

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

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

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

Кроме удаления старых плагинов и шаблонов и замены их на обновляемые, необходимо вернуть файлу wp-load.php права доступа (как правило, это 644). Затем следует поменять пароль администратора сайта и тот, что используется для входа на хостинг. Рекомендуется сразу записать их в блокнот, чтобы не закрыть себе доступ.

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

Кроме всего прочего, необходимо установить на сайте хотя бы временно Shield Security и в его журнале аудита найти IP-адреса тех, кто пытается взломать сайт. Все подозрительные IP необходимо добавить в конец файла .htaccess (забанить), указав перед каждым сочетание deny from. Как например:

deny from 120.133.47.78

Но это не вся работа по восстановлению работы веб-ресурса, на котором из-за действий хакеров возникла ошибка HTTP error 500. Требуется установить на сайте дополнения WordPress, которые помогали бы следить за работоспособностью сайта и защищали его от взлома и внедрения вредоносных программ. К таким относятся:

1. Плагин, изменяющий ссылку для входа на сайт. Не рекомендуется использовать для этого скрипт. Практика показывает, что он уязвим. К дополнениям WordPress способным изменять адрес страницы авторизации на сайте относятся:

  • — All In One WP Security & Firewall;
  • — WP Hide & Security Enhancer;
  • — WPS Hide Login;
  • — Cerber Limit Login Attempts;
  • — iThemes Security (ранее был Better WP Security);
  • — Shield Security.

2. Дополнение WordPress, мониторящее состояние сайта, как, к примеру, Wordfence Security. Однако из-за этого плагина нередко возникает ошибка 500 на сайте. Что означает она приходится выяснять каждый раз по новой. Как было уже не раз на kak-sarabotatj.ru. Поэтому лучше использовать другой, но желательно тоже обладающий брандмауэром. К плагинам защиты WordPress-сайта относятся:

  • — All In One WP Security & Firewall;
  • — Shield Security;
  • — Sucuri Security;
  • — iThemes Security (ранее был Better WP Security);
  • — Cloudflare;
  • — SiteLock;
  • — BulletProof Security;
  • — Security Ninja.

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

  • — Limit Attempts by BestWebSoft;
  • — Login LockDown.

На этом работа по предотвращению атак не закончена. Необходимо еще изменить соли (SALT) в файле wp-config.php, а также поменять в нем пароль к базе данных. Желательно было бы изменить в wp-config.php название базы данных и имя пользователя. Если нет представления, как это делается, следует обратиться в службу поддержки, чтобы специалисты отредактировали данные в файле wp-config.php, изменив названия базы данных и пользователя в настройках доступа к базе данных.

После проделанной работы рекомендуется выставить права доступа к wp-config.php — 400, точно так же, как это было сделано ранее для файла wp-load.php. Такими права следует оставить навсегда. Они позволят видеть содержимое файла только владельцу сайта. Все остальные не получат доступа, если не попадут в аккаунт на хостинге.

В будущем, чтобы не тратить своего времени с целью обнаружить в интернете, что значит HTTP error 500, следует мониторить версии CMS WordPress, плагинов для нее и темы сайта. Все они должны вовремя обновляться. В автоматическом режиме способен обновить дополнения Shield Security. Установив этот плагин однажды, можно будет на время забыть о необходимости проверять актуальные обновления.

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

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

Copyright © kak-sarabotatj.ru

Рассылка сайта kak-sarabotatj.ru
Рассылки на выбор:
HTTP error 500 — ошибка на сайте WordPress” 1 комментарий
  1. Alex

    Я Вам весьма признателен. Уж нашёл про очистку wp-load.php, да не помогло. Всё перерыл, весь инет 2 дня копал и забросил. А сегодня получил Вашу рассылку и прям как желание исполнилось на 23. Спасибо! Да, вирус плагин нашёл. Остаётся зачистить файлы.

    Ответить
Удалось ли вам обнаружить причину, по которой на вашем сайте возникла ошибка HTTP error 500?

Ваш email не будет опубликован
Обязательные поля помечены *
Комментарий публикуется после модерации
Добавьте эту страницу в закладки, чтобы позже прочитать ответы на свои комментарии

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