При работе с ресурсом под управлением CMS WordPress иногда возникает достаточно распространенная критическая ошибка 500 на сайте.
Она может появиться при установке движка на сайт, либо при его обновлении.
Почему появляется ошибка 500 на сайте
WordPress является одной из самых популярных CMS в Мире, но зачастую, когда сайт перестает работать, он не предоставляет достаточной информации о возникающих ошибках.
Основные причины возникновения этой ошибки могут быть следующие:
- Тема сайта не поддерживает определенный плагин.
- Плохая совместимость плагинов между собой.
- Некачественный код темы или плагина, что вызывает ошибку при обновлении WordPress.
В некоторых случаях лучше обратиться в техническую поддержку для выявления и устранения полной причины ошибки 500 на сайте.
Как устранить ошибку 500 на сайте
Решить данную ошибку, как многие ее называют еще – белый экран смерти, возможно самостоятельно с помощью следующей пошаговой инструкции:
1. В нашем случае невозможно зайти в Панель управления сайтом. При этом WordPress подсказывает, что есть информация об ошибке и отображается ссылка на статью.
2. Переходим по ссылке, и здесь приводится список возможных ошибок WordPress.
Находим раздел Отладка в WordPress и переходим в параграф WP_DEBUG.
В нем приводится подсказка, какую именно константу необходимо изменить в файле wp-config.php для того, чтобы установить режим отладки.
3. Для этого переходим в Панель управления хостингом, в данном случае Beget, в раздел Файловый менеджер.
4. Известно, что сайт располагается в папке с названием сайта, в данном случае webentrance.ru, а файлы размещаются в папке public_html. Здесь находим файл wp-config.php и открываем его.
5. Находим в файле строчку, которая приводится на странице отладки WordPress, а именно:
define{ ‘WP_DEBUG’ , false };
6. В этой строчке меняем значение false на true. Получится следующее:
define{ ‘WP_DEBUG’ , true };
7. Сохраняем изменение в файле.
8. Теперь переходим на страницу входа в административную панель управления сайтом и обновляем ее. В открывшемся окне появляется текст ошибки, из которого можно узнать, в чем заключается проблема.
В нашем случае файл с ошибкой располагается по пути со следующими параметрами:
…wordpress/public_html/wp-content/plugins/wordpress-seo/wp-seo.php…
Это абсолютный путь в системе. Сразу можно догадаться, что проблема возникла в плагине.
То есть, если в файловом менеджере перейти по этому пути, то мы найдем нужный нам плагин. В данном случае ошибка возникла в wordpress-seo.
Отключение плагина
Пробуем этот плагин отключить. Для этого переходим в файловый менеджер, закрываем wp-config.php и ищем соответствующую папку. Открываем папку wp-content, и в ней находится папка plugins.
Открываем ее и находим опять же папку с wordpress-seo. Для WordPress достаточно папку переименовать, чтобы плагин перестал работать.
То есть, движок не сможет найти данный плагин, из-за того, что к нему будет изменен путь. Итак, переименуем папку с плагином, добавив к имени слово old.
Проверка работы сайта
Переходим на страницу входа в административную панель управления сайтом и обновляем ее. Как видим, на странице отобразилась форма входа в админку. Осталось ввести логин и пароль, но это еще не все.
Отключаем режим отладки на сайте
У нас включен режим отладки, что может негативно сказаться на безопасности сайта. То есть, злоумышленники по тексту ошибки смогут получить информацию, которую в дальнейшем использовать в своих целях.
Поэтому, возвращаемся в файловый менеджер, в папку public_html, где находится wp-config.php. Открываем его и там, в строке, где производили замену значений false на true, необходимо вернуть строку к исходному виду. То есть обратно меняем значение true на false и сохраняем изменения. Строка снова должна иметь вид:
define{ ‘WP_DEBUG’ , false };
Теперь режим отладки отключен, и злоумышленники не смогут узнать информацию о файлах на сервере.
В данном случае административная панель сайта была недоступна. Если в результате ошибки, например, не отображается сайт, но есть возможность зайти в админку, то следует по одному отключать установленные плагины и выявить, таким образом, тот, который вызывает ошибку.
Вот и все, надеюсь, публикация была полезна. Пишите в комментариях, с чем сталкивались вы, и мы попытаемся вместе разобраться с проблемами.