Что означает ошибка сервера «500» и как её исправить ⚠️

Что означает ошибка сервера «500» и как её исправить ⚠️ ФСС
Содержание
  1. Описание неполадки и причины возникновения
  2. 500 Internal Server Error — что это?
  3. 1. Серверные ошибки
  4. 2. Некорректный файл .htaccess
  5. 4. Ошибки в Perl и Python скриптах
  6. 6. Конфликты после обновлений и установки плагинов
  7. 7. Устаревшая версия PHP
  8. 1. Редактирование файла .htaccess
  9. 2. Исправление прав доступа
  10. 3. Исправление проблем с расширениями или обновлениями
  11. Алгоритм модификации
  12. Выполнение диагностики
  13. Долгое выполнение скриптов
  14. Методика выявления неверного кода
  15. Некорректная работа cms
  16. Некорректный .htaccess
  17. Обновляем cms-модуль
  18. Опции для тестирования
  19. Ошибка «500» в cms joomla
  20. Ошибка «500» в wordpress
  21. Ошибка в коде cgi-скрипта
  22. Порядок деактивации плагина
  23. Права доступа к директориям и файлам
  24. Превышение лимита выделенной памяти
  25. Проверяем доступ в интернет, перезапускаем браузер
  26. Проверяем права доступа
  27. Решение № 1 — изменение прав
  28. Решение № 1 — исправление кода
  29. Решение № 1 — оптимизация php-скрипта
  30. Решение № 1 — проверка формата окончания строк
  31. Решение № 1 — установка прав на «logs»
  32. Решение № 1 — файл .htaccess
  33. Решение № 2 — изменение настроек
  34. Решение № 2 — корректность путей к директориям «logs» и «tmp»
  35. Решение № 2 — перезагрузка сервера
  36. Решение № 2 — смена текущей темы
  37. Решение № 2 — увеличение времени обработки
  38. Решение № 2 — установка прав доступа
  39. Решение № 3 — перебор плагинов
  40. Решение № 3 — проверка .htaccess
  41. Решение № 3 — связаться с технической поддержкой
  42. Решение № 4 — модификация конфигурационного файла
  43. Подводим итоги

Описание неполадки и причины возникновения

Ошибка: «500 Internal Server Error» – это внутренняя неполадка, которая возникает из-за некорректной работы удаленного сервера. Механизм этой проблемы следующий:

  1. Человек отправляет на сайт какой-либо запрос (например, открытие страницы).
  2. Сервер получает этот запрос, но не может его обработать – это приводит к сбою.
  3. Браузер получает сообщение об ошибке и показывает её человеку.

Основные причины возникновения неполадки:

  • Использование старого CMS-модуля.
  • Нарушение прав доступа.
  • Превышено время ожидания.
  • Нарушение работы плагинов.
  • Проблемы с браузером (редко).
  • Технические работы на сервере.

Чаще всего ошибка 500 отображается в виде надписи: «Internal Server Error» на белом фоне. Однако иногда текст надписи может быть другим:

500 Internal Server Error — что это?

500 — код ошибки, указывающий на проблемы с сервером. Она возникает по различным причинам:

  • некорректные директивы в .htaccess,
  • неверно установленные права к файлам проекта,
  • конфликты с новыми расширениям.


Пользователи, сталкиваясь с ошибкой, видят следующее предупреждение.

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

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

1. Серверные ошибки


Начните работу по исправлению 500 внутренней ошибки сервера с анализа логов ошибок. Чтобы их проверить, перейдите в панель управления хостингом и найдите раздел с настройками ресурса.

Выберите в логах вкладку «Error» и необходимую дату, чтобы просмотреть отчёт за определённый день, или укажите диапазон времени.

Ещё один способ обнаружить источник ошибку 500 Internal Server Error — провести техническую проверку, которая доступна в разделе настроек.

2. Некорректный файл .htaccess

Зачастую error 500 отображается из-за неправильных директив в .htaccess. Любая некорректная команда или лишний символ могут вызвать сбой работы ресурса. Узнать, что ошибка именно в .htaccess, можно при помощи простого теста. Зайдите в панель управления хостинг-провайдера, перейдите в раздел «Файл-менеджер», чтобы попасть в корневой раздел проекта, и смените имя .htaccess на другое, например, test.

4. Ошибки в Perl и Python скриптах


Иногда 500 ошибка возникает при выполнении скриптов. В данной ситуации нужно проверить, выполняются ли указанные условия:

  • Каталоги, в которых размещены скрипты, как и сами файлы, имеют права доступа 755, т.е. открыты для записи только владельцу.
  • Загрузка скриптов на сервер происходит по FTP, с использованием режима ASCII.
  • В начале файла указан корректный путь к интерпретатору для обработки скрипта, после этого нет спецсимволов, для перевода строки используется n.
  • Если скрипт что-то выводит в браузер, в начале добавлен заголовок Content-Type: text/html и одна пустая строка.
  • Заканчивает файл также пустая строка.
Читайте также:  Войти на сайт фсс через госуслуги личный кабинет

6. Конфликты после обновлений и установки плагинов

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

7. Устаревшая версия PHP

Устаревшие версии PHP 5.6 и 7.0 не получают обновления безопасности, они работают медленнее, и у них могут возникать проблемы с различными плагинами и скриптами. Помимо этого, ресурсы с устаревшей версией PHP хуже ранжируются. Проверить текущую версию можно на хостинге в разделе «Настройки» — «Настройка PHP».

1. Редактирование файла .htaccess

Если источник ошибки в .htaccess, поочерёдно закомментируйте перечисленные директивы, добавив перед ними #:

  • Options. Иногда удаление этой директивы устраняет error 500. Если проблема не исчезла, попробуйте следующий вариант.
  • Директивы, меняющие настройки PHP, — php_value, php_flag.
  • Параметр ExecCGI.
  • -MultiViews.
  • AddHandler.


Ещё один альтернативный вариант — замена директивы Options FollowSymLinks на Options SymLinksIfOwnerMatch, а Options All -Indexes — на Options -Indexes.

2. Исправление прав доступа

При некорректно установленных правах поменяйте их на 640 либо восстановите настройки по умолчанию. В зависимости от хостинг-провайдера алгоритм действий может различаться, найдите соответствующие настройки. Например, у провайдера «Украина» предлагается восстановить права доступа ко всем файлам и папкам в разделе «Установка CMS».

Можно также восстановить настройки по умолчанию с помощью редактирования прав доступа конкретного файла.

3. Исправление проблем с расширениями или обновлениями

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


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

Алгоритм модификации

  1. В корневой директории хостинга необходимо найти файл «wp.config.php».
  2. Открыть его в редакторе.
  3. Перейти в конец файла.
  4. Добавить код «define(‘WP_MEMORY_LIMIT’, ’64M’)».
  5. Сохранить и перезагрузить страницу.

Выполнение диагностики

  1. Скопировать .htaccess на диск, а затем удалить его на сервере.
  2. Обновить страницу.
  3. Если сайт заработал, то нужно искать причину в файле.
  4. Если при обновлении страницы ошибка не исчезнет, то рекомендуется изменить атрибуты файла .htaccess. Для этого нужно запретить запись в файл, задав в правах доступа числовое значение «644».

Последний пункт влияет на активацию плагинов. Его рекомендуется рассматривать как временную меру.

Долгое выполнение скриптов

В настройках PHP выставляется ограничение времени, которое дается скрипту на его выполнение. Многие об этом забывают, выставляя только параметр в файле «php.ini», находящийся в папке web-сервера Apache.

Методика выявления неверного кода

  1. Закомментировать все строки при помощи символа решетки «#».
    Методика выявления неверного кода
  2. Убрать «#» с первой строки.
    Методика выявления неверного кода
  3. Сохранить изменения и загрузить нужные файлы на сервер через перетаскивание или с помощью функции «Загрузить на сервер» в контекстном меню. Процедура аналогична тому, как это делается в описанном выше случае с изменением атрибута файла.
  4. Проверить web-приложение (сайт).
  5. При отсутствии сообщения с кодом «500» нужно выполнить пункт «2» для других строк.
  6. Если возникла ошибка, то требуется проверить правильность написания директивы и ее поддержку хостингом.

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

Некорректная работа cms

Причиной появления ошибки «500» могут стать неверные настройки CMS. Наиболее часто используются WordPress и Joomla. Следовательно, на их примере и нужно разобрать причины возникновения проблемы, а также решения по ее устранению.

Некорректный .htaccess

Для файла .htaccess существует определенный синтаксис, который нельзя нарушать. Если в нем неверно указаны директивы, то при обращении к сайту будет возникать ошибка «500». Кроме того, не все директивы поддерживаются на хостинге.

Обновляем cms-модуль

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

Читайте также:  Личный кабинет

Например, в случае «Wordpress» – вы проходите авторизацию и открываете вкладку «Updates» – если есть неустановленные обновления, то сверху должна появиться строка «Please Update Now».

Опции для тестирования

  • error_reporting = E_ALL
  • display_errors = On
  • display_startup_errors = On

В файле конфигурации нужно указать вышеописанные параметры без точек.

Если проблем в файле нет, а сообщение об ошибке «500» выводится на экране, необходимо перейти ко второму способу решения проблемы.

Ошибка «500» в cms joomla

Ошибка с кодом «500» иногда возникает при попытке зайти в административную панель CMS Joomla. При этом сайт и все его функции работают корректно.

Ошибку нужно искать самостоятельно, перебирая каждый из вариантов. В файле «error.php», который расположен в директории «logs», находится описание всех проблем при работе с CMS.

Ошибка «500» в wordpress

При работе сайта на движке WordPress методика диагностики появления ошибки с кодом «500» немного отличается от остальных CMS. Проблема может быть связана с .htaccess, установленной темой, плагином или ядром WordPress.

Ошибка в коде cgi-скрипта

Скрипт CGI-типа используется для создания интерактивных страниц, контент которых зависит от действий пользователя. Довольно часто при неверной работе со скриптами этого типа на сайте возникает внутренняя ошибка сервера с кодом «500».

Порядок деактивации плагина

  1. Выбрать плагин (стрелка № 1).
  2. В выпадающем списке указать опцию «Деактивировать» (стрелка № 2).
  3. Нажать на кнопку «Применить» (стрелка № 3).
  4. Обновить веб-страницу.
  5. Перебор плагинов продолжать до возобновления работы интернет-ресурса.

Если деактивация плагинов не привела к положительному эффекту, и сайт по-прежнему не работает, то нужно перейти к четвертому методу.

Права доступа к директориям и файлам

Отсутствие необходимых прав доступа к объектам файловой системы (директориям и файлам) довольно часто приводит к ошибке со статусом «500». При переносе сайта на другой хостинг или изменении его структуры (добавлении новых элементов) пользователь забывает изменить права доступа.

Превышение лимита выделенной памяти

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

Проверяем доступ в интернет, перезапускаем браузер

В редких случаях временная ошибка (500) возникает из-за серьезных проблем с браузером или некорректного подключения к интернету. Решение:

  1. Проверьте свое подключение к интернету, обновите страницу.
  2. Установите последние обновления на свой браузер.
  3. Очистите кэш, удалите куки (способ удаления, очистки зависит от типа браузера).

Проверяем права доступа

Достаточно часто неполадка возникает из-за некорректных прав доступа. Например, если разрешить всем пользователям вносить исправления в скрипт-обработчик, то сервер автоматически заблокирует такой сайт. Поэтому нужно обязательно проверить права доступа к каждому файлу – например, с помощью файлового менеджера «FileZilla»:

  1. Запустите FileZilla. Найдите папку-сервер и кликните по какому-либо файлу или папке правой кнопкой и выберите пункт «Права доступа».
  1. Обратите внимание на строку «Числовое значение» – в этой строке ни в коем случае не должно быть значение 777! Для папки рекомендуется указать значение 755, для скрипта – 600, для всех остальных файлов – 644.
  2. Проверьте с помощью менеджера ВСЕ файлы сайта и внесите исправления согласно предыдущем пункту.

Решение № 1 — изменение прав

Для доступа к файловой системе сервера можно использовать бесплатный клиент FileZilla. Его необходимо установить, а затем запустить.

Решение № 1 — исправление кода

Для определения причины ошибки «500», связанного с некорректным файлом .htaccess, последний необходимо сохранить в другом месте, а исходник удалить. Если сайт заработал, то в сохраненном файле .htaccess следует искать неверный код.

Решение № 1 — оптимизация php-скрипта

Чтобы оптимизировать PHP-скрипт, необходимо его переписать без лишнего кода. В интернете существует несколько сервисов для выявления избыточного кода.

Эта задача под силу опытному программисту. Новичку рекомендуется работать со скриптом, тестируя его на локальном сервере, а затем загрузить на хостинг.

Решение № 1 — проверка формата окончания строк

Для проверки символа, содержащегося в конце каждой строки, используется специальный редактор (например, Notepad или любой другой с поддержкой отображения символов табуляции).

  • Если сервер работает под управлением Unix-систем, то окончание каждой строки должно соответствовать символу «n».
  • При использовании Windows-платформы — «rn».
Читайте также:  Господдержка работодателей в 2021 году

Решение № 1 — установка прав на «logs»

Чтобы устранить проблему, нужно установить права доступа на папки «logs» и «tmp», которые должны соответствовать числовому значению «777».

Решение № 1 — файл .htaccess

Файл используется при изменении структуры ссылок и работе плагинов. Кроме того, в него могут вносить изменения ядро CMS, темы и плагины.

Решение № 2 — изменение настроек

Настройка лимита памяти выставляется в файле конфигурации «php.ini». За этот параметр отвечает опция «memory_limit».

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

Решение № 2 — корректность путей к директориям «logs» и «tmp»

Пути к директориям хранятся в файле «configuration.php». Необходимо проверить их правильность, указав при необходимости полные пути.

Решение № 2 — перезагрузка сервера

При размещении ресурса на базе физического или виртуального выделенного сервера (VPS) может иногда возникать ошибка 500. Если страница временно недоступна и браузер выдает ошибку с кодом «500», а изменения прав доступа были испробованы, то нужно просто перезагрузить сервер.

Решение № 2 — смена текущей темы

Для устранения ошибки «500» рекомендуется поменять тему на другую, а затем обновить страницу. Если сайт заработал, то причина в ней. В противном случае нужно перейти к третьему варианту решения проблемы.

Решение № 2 — увеличение времени обработки

Клиенту, пользующемуся услугой VPS, следует увеличить время ожидания сервера. Для этого нужно в «php.ini» найти параметр «set_time_limit» и установить его значение как «0», т. е. set_time_limit = 0.

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

Решение № 2 — установка прав доступа

Одной из причин неправильной работы CGI-скриптов является некорректное разрешение прав доступа. Для директории, в которой хранятся CGI-файлы, должны стоять права с числовым значением «755».

Решение № 3 — перебор плагинов

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

Решение № 3 — проверка .htaccess

При ошибке «500» в административной панели нужно открыть файл .htaccess» и поочередно комментировать строки. После каждого изменения файл нужно сохранять и проверять работоспособность админ-панели.

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

Решение № 3 — связаться с технической поддержкой

Если ошибка «500» не исчезает при правильной работе скрипта и верных настройках, то нужно связаться с технической поддержкой. Как правило, они помогают исправить проблему.

Решение № 4 — модификация конфигурационного файла

Устранить проблему внутренней ошибки сервера поможет увеличение объема памяти.

Подводим итоги

  1. 500 внутренняя серверная ошибка — это достаточно распространённая проблема для ресурсов на любых CMS, а также проектах, созданных с нуля.
  2. Чаще всего причины проблем кроются в директивах .htaccess, неправильно установленных правах доступа к каталогам и файлам сайта, медленно работающих PHP-скриптах, конфликтах с новыми расширениями.
  3. Для исправления ошибки просмотрите логи сервера, исправьте некорректный синтаксис в .htaccess, проверьте время выполнения скриптов, отключите новые плагины. Если эти действия не устранили ошибку 500, восстановите резервную копию сайта.
  4. Чтобы избежать подобных неприятностей, периодически проводите техническую проверку ресурса, оптимизируйте скрипты, делайте перед любыми обновлениями бэкапы и будьте внимательны при изменении конфигурационных файлов.
  5. Если вы испробовали все способы, изложенные в статье, а ошибка так и не исчезла, напишите в техподдержку хостинга. Расскажите, после каких действий появились проблемы, и что именно вы предпринимали, чтобы их решить.


А вы часто сталкиваетесь с 500 ошибкой? Как её исправляете? Оставляйте свои ответы в комментариях 😉

Оцените статью
ФСС Help
Добавить комментарий