Если WordPress не находится в режиме автообновления и его не обновляли вручную, то вероятнее всего появление 500 ошибки говорит о том, что сайт хакнули и подменили некоторые файлы для использования WordPress в своих целях.
Можно лишь порадоваться, что появилась 500 ошибка, иначе WordPress занимался бы «левой» работой, а мы бы об этом могли не узнать довольно долго. Список действий для лечения:
- Включаем отладочный режим:
- В файле wp_config.php, заменив define(‘WP_DEBUG’, false); на define(‘WP_DEBUG’, true);
- Проверяем как грузится сайт, обновив браузер.
- Видим сообщение об ошибке.
- Если в ошибке указан файл, принадлежащий какому-то из плагинов:
- заходим в папку wp-content/plugins и переименовываем папку с названием плагина добавив в конце «.off».
- Проверяем работу сайта. Если все ок, тогда заново скачиваем плагин. Вероятнее всего плагин хакнули.
- Если в сообщении об ошибке указан какой-то из файлов WordPress:
- Скачиваем нужную версию WordPress с сайта: https://wordpress.org/download/, либо находим архив с работающей версией сайта.
- Сравниваем файлы. Если в файле появились подозрительные куски кода, вроде @include «\x2fhom\x65…» — это сделанная злоумышленниками инъекция. Заменям файл на оригинальный.
- Убеждаемся, что WordPress начал загружаться нормально.
- Если система была хакнута, то, что сайт загрузился не говорит о том, что не остались другие измененные файлы.
- Устанавливаем плагин обеспечения безопасности, например, https://wordpress.org/plugins/wordfence/. Он умеет сравнивать контрольные суммы с эталоном и обнаруживать «левые» файлы.
- Прогоняем полное сканирование и либо восстанавливаем, либо удаляем измененные/новые файлы. Чтобы не удалить чего-то лишнего — файлы лучше забакапить.
- Выключаем сообщение об ошибках вернув в файле wp_config.php define(‘WP_DEBUG’, false); .
- Второй вариант «лечения» — убедится, что проблема не связана с работой одного из плагинов.
- Переименовываем папку wp-content/plugins, например в wp-content/plugins.off.
- Проверяем не исчезла ли 500 ошибка.
- Если исчезла, убираем суффикс «.off» и начинаем добавлять этот суффикс к названию плагинов в папке. Как только испорченный плагин будет найден, сайт начнет работать.
- Возвращаем в работу остальные плагины, убрав суффикс «.off».
- Переустанавливаем плагин.
- И затем устанавливаем систему безопасности для WordPress (см. п. G) и проходим все шаги, чтобы убедится, что не было изменений в других файлах.