Коды ошибок http: полный список ошибок сервера

Как исправить ошибку внутреннего сервера 500

Как я уже упоминал выше, 500 Internal Server Error представляет собой ошибку на стороне сервера , что означает, что проблема, вероятно, связана не с вашим компьютером или интернет-соединением, а с сервером веб-сайта.

Хотя это и не вероятно, возможно , что с вашей стороны тоже что-то не так, и в этом случае мы рассмотрим некоторые вещи, которые вы можете попробовать:

  1. 1.

Перезагрузите страницу. Вы можете сделать это, нажав кнопку обновления / перезагрузки, нажав F5 или Ctrl-R или повторив URL-адрес из адресной строки.

Даже если проблема 500 Internal Server Error является проблемой на веб-сервере, проблема может быть просто временной. Повторное повторение страницы часто проходит успешным.

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

2. Очистите кеш браузера. Если есть проблема с кэшированной версией просматриваемой страницы, это может вызвать проблемы с HTTP 500.

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

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

После удаления файлов cookie перезагрузите браузер и повторите попытку.

4. Вместо этого устраните ошибку как 504 Gateway Timeout.

Это не очень распространено, но некоторые серверы производят 500 внутренних ошибок сервера, когда на самом деле более подходящее сообщение, основанное на причине проблемы, составляет 504 Gateway Timeout.

5. Другим вариантом является прямой контакт с веб-сайтом. Скорее всего, администраторы сайта уже знают об ошибке 500, но если вы подозреваете, что они этого не знают, сообщите им, так они помогут вам и себе (и всем остальным).

См. Страницу контактной информации для связи с владельцами ресурса для популярных веб-сайтов. На большинстве сайтов есть учетные записи социальных сетей на основе поддержки, а некоторые даже имеют номера электронной почты и телефонов. Совет. Если это похоже на то, что сайт полностью отключен, и вы не можете найти способ сообщить об ошибке «Внутренняя ошибка сервера 500» на веб-сайт, это может помочь вашему здравомыслию идти в ногу с отключением в Twitter. Обычно вы можете сделать это, выполнив поиск #websitedown в Twitter, как в #gmaildown или #facebookdown .

  1. 6. Вернуться позже. К сожалению, на данный момент 500 Internal Server Error, без сомнения, является проблемой вне вашего контроля, которая в конечном итоге будет исправлена ​​кем-то другим.

Даже если вы получаете ошибку 500 на сайте, который ничего не продает, например YouTube или Twitter, если вы сообщите им об этой проблеме или, по крайней мере, попробуете, вы можете сделать немного больше, чем просто ждать.

Что делать, если приложение не заходит в Личный кабинет Мегафон?

  • Убедитесь, что на телефоне установлена последняя версия кабинета. Обычно приложение оповещает пользователя о выходе новой версии. Если автообновление отключено, то операцию нужно провести вручную. Для этого посетите страничку приложения в Google Play или App Store и нажмите кнопку «Обновить», если таковая имеется. Если такой кнопки нет, то обновление не требуется.
  • Сверьте дату и время на телефоне. Телефоны под управлением Андроид получают информацию о текущей дате из интернета. Иногда случаются сбои, и телефон получает неточную информацию. В результате часть установленных приложений может перестать работать. Чтобы исправить ситуацию, введите дату и время вручную и сохраните изменения.
  • Запросите новый пароль командой *105*00# и попытайтесь войти в приложение с новым паролем.
  • Подождите пару-тройку часов и попробуйте войти в приложение. Нередко приложение не входит в Личный кабинет Megafon из-за проблем на стороне самого провайдера. Это могут быть как технические сбои (например, отсутствие соединения с базой данных), так и профилактические работы на сервере.

Почему еще может возникать ошибка 500 и как ее исправить?

Безусловно, чаще всего ошибка 500 Internal Error Server (YouTube и другие сайты) появляется если был введен неверный синтаксис .htaccess файла или если в этом файле появились неподдерживаемые директивы. В таком случае, чтобы исправить такую ошибку и привести все в норму, необходимо всего лишь провести комментирование так называемой директивы «Options». Чтобы сделать это, просто поставьте в «решетку» (#) в начале строки — ваша проблема просто исчезнет и ошибка 500 появляться на сервере больше не будет.

Но бывает и так, что 500 Internal Error Server (youtube и другие сайты) появляется по другой причине. Это может быть, главным образом, если неправильно обращаться к скриптам CGI, хотя такое бывает крайне редко

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

Также часто бывает, что в ответе работы CGI-скрипта формируются неправильные HTTP-заголовки. Если такое случилось, то решить такую проблему можно очень легко, просто обратитесь к error-log.

How You Might See a 500 Error

The error message might be seen in any number of ways because each website is allowed to customize the message.

Lifewire / Hugo Lin

Here are several common ways that you might see the HTTP 500 error:

  • 500 Internal Server Error
  • HTTP 500 — Internal Server Error
  • Temporary Error (500)
  • Internal Server Error
  • HTTP 500 Internal Error
  • 500 Error
  • HTTP Error 500
  • 500. That’s an error

Since a 500 Internal Server Error is generated by the website you’re visiting, you could see one in any browser in any operating system, even on your smartphone.

Most of the time, it displays inside the browser window, just as web pages do.

Больше способов увидеть внутреннюю ошибку сервера

В Internet Explorer сообщение «Веб-сайт не может отобразить страницу» часто указывает на внутреннюю ошибку сервера HTTP 500. Ошибка 405 Method Not Allowed – это ещё один вариант, но должны найти соответствующее подтверждение в строке заголовка IE.

Когда службы Google, такие как Gmail, испытывают внутреннюю ошибку сервера 500, они часто сообщают о временной ошибке (500) или просто 500.

Когда Центр обновления Windows сообщает о внутренней ошибке сервера, она отображается как сообщение WU_E_PT_HTTP_STATUS_SERVER_ERROR или как код ошибки 0x8024401F.

Если веб-сайт, который сообщает об ошибке 500, работает под управлением Microsoft IIS, вы можете получить более конкретное сообщение об ошибке:

Ошибка 500 Internal Server Error
Код Объяснение
500,0 Произошла ошибка модуля или ISAPI.
500,11 Приложение закрывается на веб-сервере.
500,12 Приложение занято перезагрузкой на веб-сервере.
500,13 Веб-сервер слишком занят.
500,15 Прямые запросы на Global.asax не допускаются.
500,19 Данные конфигурации неверны.
500,21 Модуль не распознан.
500,22 Конфигурация ASP.NET httpModules не применяется в режиме управляемого конвейера.
500,23 Конфигурация ASP.NET httpHandlers не применяется в режиме управляемого конвейера.
500,24 Конфигурация олицетворения ASP.NET не применяется в режиме управляемого конвейера.
500,50 Произошла ошибка перезаписи во время обработки уведомления RQ_BEGIN_REQUEST. Произошла ошибка выполнения конфигурации или входящего правила.
500,51 Произошла ошибка перезаписи во время обработки уведомления GL_PRE_BEGIN_REQUEST. Произошла глобальная конфигурация или ошибка выполнения глобального правила.
500,52 Произошла ошибка перезаписи во время обработки уведомления RQ_SEND_RESPONSE. Выполнение исходящего правила.
500,53 Произошла ошибка перезаписи во время обработки уведомления RQ_RELEASE_REQUEST_STATE. Произошла ошибка выполнения правила для исходящих сообщений. Правило настроено для выполнения до обновления выходного пользовательского кэша.
500,100 Внутренняя ошибка ASP.

Исправление ошибки 500 внутреннего сервера на вашем сайте

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

Существует множество причин, по которым ваш сайт может показывать errors 500 вашим пользователям, но эти наиболее распространены:

  • Ошибка разрешений. В большинстве случаев ошибка 500 внутренних серверов связана с неправильным разрешением одного или нескольких файлов или папок. В большинстве случаев виновато неправильное разрешение на скрипт PHP и CGI . Обычно они должны быть установлены в 0755 (-rwxr-xr-x).
  • Тайм-аут PHP (PHP Timeout). Если ваш скрипт подключается к внешним ресурсам и тайм-ауту этих ресурсов, может возникнуть ошибка HTTP 500. Правила тайм-аута или лучшая обработка ошибок в вашем скрипте должны помочь, если это является причиной ошибки 500.
  • Ошибка кодирования в .htaccess. Хотя это не так часто, убедитесь, что файл .htaccess вашего сайта правильно структурирован.

Если вы используете WordPress , Joomla или другое управление контентом или систему CMS, обязательно выполните поиск в своих центрах поддержки, чтобы получить более конкретную помощь по устранению ошибки 500 Internal Server Error, также может помочь обновление версии движка.

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

Проблемы с файлом .htaccess

Синтаксис данного файла имеет определенную структуру, которую нельзя изменять или нарушать. Если одна из его директив имеют ошибки, то это непременно приведет к ошибке HTTP ERROR 500. Может быть, что в директиве отсутствуют ошибки или конфликты файлов, но она не поддерживается.

Найдите в корне сайта этот файл «.htaccess». После чего скопируйте его в другое место, чтобы не потерять. Теперь удалите его из сайта. Если все стало на свои места, значит проблема именно в этом файле. В этом случае возьмите файл из нового дистрибутива вашей CMS (Системы управления сайтом).

Найдите и удалите файл .htaccess

Можно просмотреть сведения об ошибках сервера. Все они заносятся в специальный файл под именем – «error.log». Открыв его, вы можете найти информацию о том, какая именно из ваших директив является конфликтной. К примеру, «Invalid command ‘Prive’ сообщает нам о том, что ‘Price’ директива содержит опечатку, исправив «v» на «c» решится данная проблема.

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

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

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

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

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

Ошибка 500 в WordPress

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

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

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

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

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

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

Ошибки в скриптах сайта

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

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

Нажмите сочетание клавиш Ctrl+Shift+I или используйте меню браузера:

  • Mozilla Firefox — «Веб-разработка» → «Инструменты разработчика»;
  • Google Chrome — «Дополнительные инструменты» → «Инструменты разработчика»;
  • Opera — «Разработка» → «Инструменты разработчика».

Перейдите во вкладку «Сеть (Network)». На ошибку 500 указывает соответствующее число в колонке «Статус».

Статус пустой страницы может быть и 200 (Ok). В таком случае проверьте, есть ли содержимое в индексном файле сайта, очистите кеш вашей CMS. Если ранее сайт работал корректно, восстановите его из резервной копии.

Вывод ошибок PHP на хостинге по умолчанию выключен. Чтобы увидеть их текст, добавьте в файл .htaccess : и обновите страницу сайта.

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

1С-Битрикс

В конфигурационном файле по пути ~/public_html/bitrix/php_interface/dbconn.php замените значение переменных DBDebug и DBDebugToFile на: и

Laravel

В файле .env измените на

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

Иногда ошибка не выводится на странице или возникает периодически: ее тяжело отследить. Чтобы узнать текст таких ошибок, записывайте информацию о них в файл — журнал ошибок PHP. его, добавив в .htaccess строку: и обновите страницу сайта.

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

Быстро возобновить работу сайта можно, восстановив его из резервной копии за дату, когда ошибок не было. Если восстановление нежелательно, обратитесь к разработчику.

Для устранения некоторых ошибок не требуется специальных знаний. Рассмотрим самые распространенные.

Ошибка с текстом Allowed memory size возникает из-за нехватки оперативной памяти для выполнения скрипта:

Чтобы исправить ее, лимит оперативной памяти, добавив в файл .htaccess директиву:

Вместо «512» укажите необходимый объем памяти. Максимальное значение тарифом.

Текст Out of memory означает, что достигнут лимит оперативной памяти по тарифному плану:

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

При обновлении CMS случаются синтаксические ошибки:

Это происходит из-за того, что новые функции CMS не поддерживают устаревшие версии PHP. Чтобы исправить ошибку, измените версию PHP для сайта на более современную в разделе «Сайты и домены» → «Управление сайтами».

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

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

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

Как исправить 500 internal server error Nginx

Дословно Internal server error означает внутренняя ошибка сервера. И вызвать её могут несколько проблем. Вот основные из них:

  • Ошибки в скрипте на PHP — одна из самых частых причин;
  • Превышено время выполнения PHP скрипта или лимит памяти;
  • Неправильные права на файлы сайта;
  • Неверная конфигурация Nginx.

А теперь рассмотрим каждую из причин более подробно и разберем варианты решения.

1. Ошибка в скрипте PHP

Мы привыкли к тому, что если в PHP скрипте есть ошибки, то сразу же видим их в браузере. Однако на производственных серверах отображение сообщений об ошибках в PHP отключено, чтобы предотвратить распространение информации о конфигурации сервера для посторонних. Nginx не может отобразить реальную причину ошибки, потому что не знает что за ошибка произошла, а поэтому выдает универсальное сообщение 500 internal server error.

Чтобы исправить эту ошибку, нужно сначала понять где именно проблема. Вы можете включить отображение ошибок в конфигурационном файле php изменив значение строки display_errors с off на on. Рассмотрим на примере Ubuntu и PHP 7.2:

Перезапустите php-fpm:

Затем обновите страницу и вы увидите сообщение об ошибке, из-за которого возникла проблема. Далее его можно исправить и отключить отображение ошибок, тогда все будет работать. Ещё можно посмотреть сообщения об ошибках PHP в логе ошибок Nginx. Обычно он находится по пути /var/log/nginx/error.log, но для виртуальных доменов может настраиваться отдельно. Например, смотрим последние 100 строк в логе:

Теперь аналогично, исправьте ошибку и страница будет загружаться нормально, без ошибки 500.

2. Превышено время выполнения или лимит памяти

Это продолжение предыдущего пункта, так тоже относится к ошибкам PHP, но так, как проблема встречается довольно часто я решил вынести её в отдельный пункт. В файле php.ini установлены ограничения на время выполнения скрипта и количество оперативной памяти, которую он может потребить. Если скрипт потребляет больше, интерпретатор PHP его убивает и возвращает сообщение об ошибке.

Также подобная ошибка может возникать, если на сервере закончилась свободная оперативная память.

Если же отображение ошибок отключено, мы получаем error 500

Обратите внимание, что если время ожидания было ограничено в конфигурационном файле Nginx, то вы получите ошибку 504, а не HTTP ERROR 500, так что проблема именно в php.ini

Чтобы решить проблему увеличьте значения параметров max_execution_time и memory_limit в php.ini:

Также проблема может быть вызвана превышением других лимитов установленных для скрипта php. Смотрите ошибки php, как описано в первом пункте. После внесения изменений в файл перезапустите php-fpm:

3. Неверные права на файлы

Такая ошибка может возникать, если права на файлы, к которым обращается Nginx установлены на правильно. Сервисы Nginx и php-fpm должны быть запущены от имени одного и того же пользователя, а все файлы сайтов должны принадлежать этому же пользователю. Посмотреть от имени какого пользователя запущен Nginx можно командой:

Чтобы узнать от какого пользователя запущен php-fpm посмотрите содержимое конфигурационного файла используемого пула, например www.conf:

В моем случае это пользователь nginx. Теперь надо убедится, что файлы сайта, к которым вы пытаетесь обратиться принадлежат именно этому пользователю. Для этого используйте команду namei:

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

Этой командой мы меняем владельца и группу всех файлов в папке на nginx:nginx. Добавить права на чтение для всех пользователей для каталога можно командой chmod. Например:

Далее все должно работать. Также, проблемы с правами может вызывать SELinux. Настройте его правильно или отключите:

Как устранить ошибку

Теперь поговорим о том, как исправить ошибку 500. Вернемся к популярным причинам этой проблемы и рассмотрим наиболее эффективные способы решения.

Ошибки в файле .htaccess

У этого файла довольно строгий синтаксис, поэтому неверно написанные директивы (команды) могут привести к ошибке. Попробуйте поочередно удалить команды, добавленные последними, и проверьте работу сайта. 
Также найти проблемную директиву можно с помощью логов ошибок (через те же инструменты разработчика в браузере). На ошибку в директиве обычно указывает фраза «Invalid command». Информацию о верном написании директивы или способе исправления ошибок в .htaccess вы можете найти в интернете. Не нужно искать, почему сервер выдает ошибку 500, просто введите в строку поиска название нужной команды или текст ошибки из логов.

Ошибки в скриптах сайта

Скрипт не запускается

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

Не хватает оперативной памяти

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

Ошибки в CMS

Если код CMS содержит неверный синтаксис, это может вывести сайт из строя. В таком случае логи сообщат вам об ошибке 500 текстом «PHP Parse error: syntax error, unexpected». Так происходит, когда некорректно работает плагин (или тема, используемая в CMS, но реже) либо есть ошибки в коде. Ошибка может быть допущена случайно, произойти при обновлении плагина или версии CMS.

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

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

Также в большинстве случаев подобные проблемы помогает решить поддержка CMS.

Информацию о других распространенных ошибках вы можете найти в статье «6 наиболее часто возникающих ошибок HTTP и способы их устранения».

Удачи! 

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

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

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

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

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

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

 
public $log_path = ‘full_path/logs’;public $tmp_path = ‘full_path/tmp’;

1
2

public$log_path=’full_path/logs’;

public$tmp_path=’full_path/tmp’;

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

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

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

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

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

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

Причины кода ошибки 500 internal server error

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

В связи с этим, в первую очередь нужно провести определенную диагностику как сайта, так и сервера для выявления истинной причины возникновения ошибки 500 internal server error.

Понятно, но я не программист, — как мне решить эту проблему?

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

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

#1. Неправильно настроенный файл .htaccess

Одна из самых распространенных причин возникновения 500 internal server error — это неправильно настроенный файл .htaccess. Он предназначен для изменения конфигурации и настройки веб-сервера Apache, поэтому любая ошибка в нем приведет к падению сайта.

Чтобы исправить ошибку 500 — откройте файл .htaccess и тупо закомментируйте весь код (Ctrl + A и Ctrl + ). Затем перейдите на сайт и посмотрите — пропала ошибка или нет. Если 500 ошибка сервера никуда не пропала, то тогда переходим к следующему пункту.

#2. Технические работы на веб-сервере

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

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

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

#3. Тайм-аут при получении внешнего ресурса

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

По этой причине следуют задать соответствующий в ответ на HTTP-запрос пользователя для вашего веб-сервера. Если для вас это сложно — обратитесь за помощью к фрилансерам или поищите ответы на форумах для веб-разработчиков.

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

#4. Тайм-аут при выполнении PHP-скриптов

Не исключено, что 500 ошибка на сайте связана с ограниченным лимитом выполнения PHP-скриптов и прерыванием их запуска в ответ на HTTP-запрос пользователя. По этой причине обязательно установите для в конфигурационном файле PHP.

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

Если вы используете какую-нибудь CMS-систему, типа WordPress или OpenCart, и данная ошибка связана именно с тайм-аутом при выполнении «тяжелых» PHP-скриптов, то следует либо сменить шаблон, либо самостоятельно оптимизировать проблемные участки кода.

#5. Устаревший кэш на стороне клиента

Очень редко случается, что внутренняя ошибка сервера связана с устаревшим кэшом на стороне клиента. Честно говоря, я сам не понимаю то, как это возможно, но тем не менее — это факт. Для решения данной проблемы знания веб-разработки совсем не требуются.

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

Если вы все равно не понимаете, как очистить кэш в браузере или вам просто по каким-то причинам лень это понимать — тогда просто зайдите на свой сайт с другого браузера и вполне возможно, что ошибка 500 internal server error исчезнет с вашего веб-приложения.

Список ошибок на стороне сервера (5xx)

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

500 Internal Server Error

Этот код возникает, когда сервер сталкивается с непредвиденными обстоятельствами. Такими, которые и сам не может пояснить. Как, собственно, и завершить запрос со стороны пользователя. По факту, эта ошибка говорит нам что-то вроде «Я не могу подобрать более подходящий код ошибки, поэтому лови 500 и делай с этим, что хочешь». Мы писали о нем чуть подробнее тут.

Дело не в тебе, дело во мне (С)

501 Not Implemented

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

Иногда в теле ошибки еще пишут что-то в духе «Приходите попозже, возможно, в будущем нужная функция появится».

503 Service Unavailable

Появляется, когда сервер не может обработать запрос клиента по одной из двух технических причин:

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

Обычно ошибка 503 носит временный характер, и для ее решения достаточно немного подождать. 

504 Gateway Timeout

Ошибка похожа на 408. Здесь же прокси-сервер пытается выйти на контакт с вышестоящим сервером, но не успевает это сделать до истечения тайм-аута. Отсюда и ошибка.

505 HTTP Version Not Supported

Этот код похож на 426. Он тоже связан с неподходящей версией протокола HTTP. В этом случае нужно обеспечить и клиента, и сервер единой версией. Она, как правило, указывается в запросе со стороны пользователя. 

506 Variant Also Negotiates

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

507 Insufficient Storage

Код 507 встречается в тех ситуациях, когда серверу не хватает пространства в хранилище для обработки запроса со стороны клиента. Проблема решается освобождением места или расширением доступного пространства. Тогда сервер сможет без проблем обработать запрос пользователя.

508 Loop Detected

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

510 Not Extended

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

511 Network Authentication Required

511 код говорит о том, что перед тем как выйти в сеть, надо авторизоваться (ввести логин и пароль). Можно воспринимать это неким PPPoE подключением, когда от клиента требуются данные для авторизации.

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
Добавить комментарий