Ошибка сервера 500. Как её исправить?

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (1 оценок, среднее: 5,00 из 5)
Загрузка...

Иногда на сайтах возникает ошибка с кодом 500. Она ещё называется «внутренняя ошибка сервера». Что можно делать в этой ситуации, как максимально быстро решить проблему?

Откуда берется ошибка сервера 500

500 internal server error — это серверная ошибка, которая указывает на то, что сервер некорректно сконфигурирован либо запрос к серверу не может быть обработан в штатном режиме. Поэтому время от времени такая ошибка может возникать. Рассмотрим самые популярные варианты появления ошибки:

  1. Некорректные права доступа на файлы и папки. Иногда бывает, что на некоторых серверах блокируются php файлы с правами 777 из-за соображений безопасности.
  2. Очень долгое выполнение скрипта. На каждом виртуальном хостинге есть жесткие ограничения на время выполнения скрипта. Если это время скриптом превышается, то возникает внутренняя ошибка сервера 500.
  3. Ошибка в файле .htaccess. Любая ошибка синтаксиса в этом файле сразу переводит сервер в 500 статус.

Методы решения внутренней ошибки сервера 500

Метод решения зависит от типа возникшей проблемы на сервере. Поэтому предварительно необходимо продиагностировать варианты ошибок.

Произвольный php сайт

На самописных сайтах чаще всего два варианта возникновения ошибки 500: ошибка в .htaccess и слишком долгое выполнение скрипта. Если ошибка в хтаксес, то необходимо откатить файл до предыдущей версии. Если не поможет, то просто очистите его и по строке добавляйте, чтобы найти проблемные директивы. С ними и нужно будет работать. Вероятно, отключен какой-то модуль на стороне сервера.

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

Ошибка 500 в WordPress

В вордпрессе internal server error 500 возникает по следующим причинам:

  • Неполадки после обновления ядра сайта
  • Конфликты с плагинами
  • Ошибки в .htaccess
  • Превышено время выполнения скрипта

Неполадки после обновления очень сложно отследить. Именно поэтому всегда делайте бэкап перед обновлением! Это убережет вас от случайного возникновения 500 ошибки. Если бэкапа нет, то попытайтесь его запросить у хостинговой компании (в 99% случаев у них будет бэкап за последние сутки или неделю. Можно восстановиться из него). Если же даже хостер не может отдать вам бэкап, то нужно действовать так:

  • Проверить все более простые варианты: например, ошибку в хтаксес
  • Идти в логи сервера и искать проблемный скрипт
  • Определить, почему он выдает ошибку и исправить её

На словах звучит просто, а на практике на решение вопроса может уходить десятки часов. Если у вас на сайте много трафика, то готовы ли вы так рисковать ради слепого обновления? Или лучше просто сделать бэкап?

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

Внутренняя ошибка 500 в Joomla

В Джумле очень часто ошибка 500 возникает при входе в админку. Подход к решению аналогичен написанному выше: диагностика + поиск решения.

Так выглядит ошибка 500 в Джумле
Так выглядит ошибка 500 в Джумле

В Joomla лог ошибок лежит в папке logs. Файл называется error.php Если в нем пусто, то посмотрите на логи хостинга (уточните у своего хостера точное месторасположение файла). Скорее всего, вы там увидите скрипт, который выдает ошибку. Ну и дальше уже работайте с этим скриптом, устраняя ошибку.

Иногда ошибка 500 при входе в админку Joomla возникает из-за невозможности записи в папки /logs и /tmp В этом случае временно назначьте права 777 на них (затем обязательно измените на 755 и если ошибка снова проявится — пишите хостеру, т.к. это дыра в безопасности сервера).

Если и это не помогло, то пропишите в configuration.php следующее:

вместо full_path нужно указать полный путь к папке (именно серверный путь, а не http адрес!).

Этих решений достаточно в 95% случаев для решения данной проблемы. Если проблема не решится, то пишите, разберемся в индивидуальном порядке.

Устраняем ошибку 500 в opencart

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

Вот виновник вопроса (лог модуля vQmod): корень_сайта/vqmod/vqmod.log

Решения два: либо время от времени по крону очищать этот файл, либо обновить vQmod до последней версии (в ней файл обнуляется каждые 7 дней).

Ошибка 500 в Битриксе. Что делать?

Битрикс требователен к ресурсам хостинга, поэтому на слабых серверах может периодически возникать ошибка 500. Решение тут может быть только одно — переезд на более надежный и мощный сервер.

Но перед этим обязательно проверить файл error.log, именно в него пишутся все логи ошибок системы. Битрикс очень плотно работает с файловой системой, для него критичны права доступа, поэтому за ними нужно следить особенно тщательно!

Вопрос-ответ

В: У меня очень часто появляется ошибка internal server error. Что делать?
О: Скорее всего, слабый хостинг. Смените хостера как можно скорее!

В: Влияет ли ошибка 500 на продвижение сайта?
О: Конечно! Есть вероятность, что придет поисковой робот, а сайт недоступен. Страницы сайта могут легко выпасть из индекса.

Козлов Эдуард

Автор статьи:

Эксперт в интернет-маркетинге и развитии бизнеса. Занимаюсь интернет-маркетингом с 2007 года. Основатель компании WSP-Design.

Кол-во написанных статей: 45.

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *