Активные пользователи интернета лучше всех знают ошибки, которые возникают при работе в браузере. Одни из них встречаются наиболее часто, как, например, ошибка 404. Другие – реже, например, ошибка 500. И именно о второй мы поговорим сейчас: о её причинах и способах решения.
Что за ошибка http error 500
Полный текст ошибки 500 на английском «internal server error» с приписками «occurred», «nginx», «database problem try later». Это переводится как «внутренняя ошибка сервера». В русскоговорящем сегменте обычно пишется просто «ошибка сервера». Раз уж у обычных пользователей дома нет никаких серверов, решение этой проблемы обычно зависит от владельца сайта. Но не всегда неисправность возникает по вине вебмастера, иногда такое сообщение возникает по вине пользователя, рассмотрим несколько способов решения этой задачи.
Рекомендации для исправления со стороны пользователя
Корни неисправности идут со стороны сайта, поэтому рекомендаций для обычного пользователя немного. Тем не менее, есть несколько способов:
- Перезагрузить страницу. Владельцы сайта, естественно, заметят проблему и сделают всё, чтобы её решить как можно скорее. Поэтому после неудачной попытки попробуйте снова через пару минут, возможно, к тому времени всё уже будет хорошо.
- Просканировать компьютер на наличие вирусов. Вредоносные программы могут действовать по-разному. Невозможно предсказать, насколько они изворотливые и хитроумные. Поэтому не стоит исключать возможность заражения ПК где-то на просторах сети.
- Сменить настройки доступа к Интернету. Заходим в «Панель управления» и находим Центр управления сетями и общим доступом. Кликаем правой кнопкой на своем подключении и выбираем Свойства. Остается найти пункт – протокол интернета версии 4 и изменить его настройки.
Исправляем на стороне сервера
Сайты представляют собой сложную структуру, поэтому любая мелочь может привести к различным проблемам. Рассмотрим несколько причин.
Меняем тему WordPress
Владельцы сайтов на базе WordPress наверняка слышали об этой ошибке. И в этом случае сложно определить точную причину. Часто код ошибки 500 может возникнуть из-за некорректно установленной темы. Для того, чтобы исправить эту причину, установите одну из стандартных тем и перезапустите сайт. Если не помогло, удалите «wp-admin» и «wp-includes» и замените их резервными копиями.
Деактивируем плагины
Проблема может возникнуть из-за некорректной установки или работы плагина. Также причиной может стать конфликт. В этом случае следует либо их все удалить, либо все отключить и поочерёдно включать, чтобы выяснить, с каким именно появились проблемы.
Изменяем конфигурацию .htaccess
Авторизуемся в корневом каталоге WordPress и находим файл .htaccess. Переименовываем его в .htaccess.bak. Затем обновляем окно и смотрим, сработало ли это. Если да, заходим в раздел «Параметры», затем – «Постоянные ссылки» и «Сохранить изменения».
Меняем права доступа
Проблема может крыться в значении прав доступа 777, которые позволяют любому пользователю вносить изменения. Это негативно отразится на вашем ресурсе. Но на некоторых хостингах такой ошибки может и не быть. Доступ к корневому каталогу ресурса должен быть только у вас.
Рекомендуется везде, где установлены такие права внести изменения, и поставить 755 для папок, 600 для скриптов и 644 для всех остальных файлов.
Нехватка памяти на сервере
Для того, чтобы избежать слишком большой нагрузки на сервер хостинг порой накладывает ограничение на потребление памяти. Чаще всего это случается так: мы ставим плагин, который слишком «тяжёлый» для нашего ресурса. В итоге он не может прогрузиться до конца и возникает подобное сообщение — internal server error database problems try later. Для исправления ситуации либо уменьшите объем потребляемой памяти, либо обратитесь в техническую поддержку вашего хостинга.
Исправляем скрипты CGI
Есть некоторые правила оформления и размещения этих скриптов:
- Загружать их нужно через FTP.
- Ограничьте доступ к CGI и папкам с ними, чтобы записывать их могли только вы.
- Из-за работы скрипта могут быть неправильно сформированы НТТР-заголовки ответа. Для решения этой причины нужно открыть логи ошибок и проверить их.
Исправляем ошибку при входе в админку Joomla
Проблемы с сервером могут случиться не только с Вордпресс но и с Joomla. С Джумлой стоит, наоборот, изменить права доступа на 777.
Оптимизируем скрипты
На хостингах есть чёткие границы времени, в которые должны выполняться скрипты. В случае, если именно это является причиной, поможет только оптимизация скриптов.
Изменение версии PHP
Ошибка internal server error nginx может произойти также при переходе на новую версию PHP. И решение простое – нужно всего лишь восстановить прежнюю. Изменение происходит индивидуально, в зависимости от хостинг-панели. Но обычно нужно пройти по пути «Дополнительно» — «Смена версии PHP».
Включаем отображение ошибок
Следует включить отображение ошибок, для того, чтобы видеть, какая именно часть кода вызывает проблему. И это очень удобно – не нужно наугад искать причину. Делаем мы это в том же разделе, где и смена версии PHP. Просто нужно в пункте «Отображать ошибки» кликнуть на «Включена».
Используем отладку на WordPress
У Вордпресс есть своя собственная система отладки, позволяющая вычислить причину проблем. Для того, чтобы её включить, нужно внести изменения в wp-config.php. В файловом менеджере появится debug.log. В нём и будут записаны все проблемы, которые вам нужно решить.
Чтобы это сделать, открываем сам файл и ищем строку:
define(‘WP_DEBUG’, false);
Для включения изменяем false на true. Чтобы включить запись протоколирования в файл необходимо добавить еще одну строку. В итоге должно получиться:
define('WP_DEBUG', true);
define( 'WP_DEBUG_LOG', true );
Есть еще одна возможность – вывод сообщения сразу на экран. Для этого добавляем:
define( 'WP_DEBUG_DISPLAY', true );

Восстанавливаем резервную копию сайта
Если вообще ничего не помогает, для восстановления работы сайта, можно использовать бэкап. Разумеется, у каждого владельца интернет-ресурса он должен быть. Есть огромное количество плагинов, которые позволяют это сделать. Например, All-in-One WP Migration.
Переустановка WordPress
Это самый кардинальный путь решения проблемы. Для этого мы распаковываем новую версию Вордпресс на компьютере и удаляем оттуда wp-config-sample.php и wp-content. Переносим все корневые файлы на хостинг через FTP. Сохраняем сайт и обновляем его в браузере.