news
Serverspace в «Рейтинге провайдеров IaaS Enterprise 2023» от Market.CNews
KA
2 августа 2023
Обновлено 2 августа 2023

Коды ошибок HTTP: полный список ошибок сервера. Как устранить ошибки?

Apache Nginx

Эффективное устранение кодов ошибок HTTP представляет собой серьезную задачу, поскольку требует понимания причин их возникновения и навыков поиска и устранения неисправностей. Коды ошибок, представленные трехзначными числами (например, 404, 500), означают наличие проблем с обработкой запроса клиента или сервера. Выявление конкретной ошибки и ее первопричины требует знания протокола HTTP, конфигурации сервера и поведения приложения.

Как исправить ошибку сервера?

Во-первых, необходимо определить точный код ошибки HTTP, возвращаемой сервером (например, 404, 500), а затем проследовать действиям ниже.

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

cat /var/log/apache2/error.log

Для просмотра журнала доступа Nginx можно воспользоваться командой cat, less или tail. С помощью приведенной ниже команды проверьте журнал событий:

tail -n 50 /var/log/apache2/error.log

Проверка конфигурации сервера: Проверьте конфигурацию виртуальных хостов и файлы .htaccess на предмет возможных ошибок в конфигурации. Как уже описывали выше, можно воспользоваться утилитами cat или nano:

nano /etc/apache2/apache2.conf
nano /etc/apache2/sites-available/000-default.conf

Вторая команда – это конфигурация виртуального хоста, которую мы должны проверить на корректность работы. Для сервера Nginx мы будем использовать команды:

nano /etc/nginx/nginx.conf
nano /etc/nginx/nginx.conf

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

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

Если эти базовые меры не помогли, можно попытаться сделать следующее:

  • Проверить соединение с базой данных: Проверить настройки подключения к базе данных и доступность, если приложение использует базу данных;
  • Отладка кода приложения: Проверить код приложения на предмет возможных проблем, вызывающих ошибку;
  • Проверить сетевые подключения: Проверить настройки сети и брандмауэра, которые могут блокировать доступ клиентов;
  • Использовать онлайн-ресурсы: Использовать форумы разработчиков и онлайн-ресурсы для обмена опытом и решениями;
  • Внедрить исправления: Применить найденные исправления для устранения кодов ошибок HTTP.

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



400 Bad Request

Это означает, что сервер получает неверный синтаксис в HTTP-запросе со стороны клиента, который может возникать из-за:

  • Неправильной настройка программного обеспечения или наличие ошибки в приложении браузера;
  • Ошибка человека, связанная с невнимательностью, в результате которой URL-запрос не соответствует правилам настройки;
  • Повреждение cookies в результате какого-либо воздействия на хранилище браузера.
Ошибка 400
Скриншот №1 — Ошибка 400

401 Unauthorized Error

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

find ./ -name .htpasswd

Используя этот путь, вы можете открыть файл в текстовом редакторе nano, используя соответствующий синтаксис nano, а затем путь для открытия вашего файла!

Ошибка 401
Скриншот №2 — Ошибка 401

403 Forbidden

В этом случае мы сталкиваемся с запрещающими правилами на веб-сервере для соединений из нашей сети или машины. Для решения возникшей проблемы проверьте основную причину. Возможно, права доступа к файлам не установлены пользователем на сервере, посмотрим на типичную конфигурацию в этом случае. У нас есть пользователь www-data для управления сервером, мы пытаемся получить доступ к файлу .php или .html, значит добавляем правило для чтения файла:

chmod 644 /etc/site-for-test/index.html

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

find ./ -name .htaccess

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

nano /etc/apache2/apache2.conf

Это поможет в решении ошибки!

Ошибка 403
Скриншот №3 — Ошибка 403

404 Not Found

Страница не найдена на сервере. Когда вы столкнулись с данной проблемой, необходимо задать себе несколько вопросов:

  • Какой процесс был при возникновении этой ошибки?
  • Указан ли правильный путь к корневому каталогу?
  • Существуют ли в системе необходимые файлы?

И остальные детали, в которых крыться некорректная настройка веб-сервера или некорректном запросе URL:

nano /etc/apache2/apache2.conf
404 ошибка
Скриншот №4 — Ошибка 404

500 Internal Server Eroor

Это означает, что сервер получает запрос, но не может его обработать из-за неизвестной проблемы на стороне веб-сервера. Обычно возникает при наличии двух или более проблем. Может происходить по разным сценариям, например: неправильно настроен системный файл .htaccess, .htpasswd и другие параметры, или отсутствует HTML-файл для формирования ответа клиенту, проверьте журнал сервера, как мы показывали в базовом руководстве выше!

Ошибка 500
Скриншот №5 — Ошибка 500

502 Bad Gateway и 504 Gateway Timeout

Шлюз или прокси-сервер не получает должного ответа от внутреннего сервера. Если для передачи трафика используется прокси, то проверьте:

  • Работоспособность бэкэнда и ответы, а также проверьте его конфигурацию;
  • Проверьте конфигурацию на стороне прокси-сервера и возможность взаимодействия по-другому порту, возможно, используемый вами порт занят другим программным обеспечением;
  • Проверьте состояние сетевого соединения и конфигурацию системы, отправив данные через утилиту netcat и протестируйте передачу данных;
  • Если в вашем web-приложении используются сокеты, необходимо проверить их расположение, наличие доступа и разрешения.

503 Service Unavailable

Эта проблема означает, что сервер не может обработать все запросы от клиентов. Если ваша машина не обслуживается, то увеличьте ресурсы процессора, оперативной памяти и проверьте одновременно доступ пользователей, потоков и процессов в конфигурации сервера! Так же ошибка может свидетельствовать о некорректной настройке балансировщика—нагрузки, для проверки его корректной настройки. Перейдите  в /etc/nginx/nginx.conf и удостоверьтесь в формате и корректности записей.

Ошибка 503
Скриншот №6 — Ошибка 503
Оценка:
4 из 5
Аverage rating : 4.4
Оценок: 5
191028 Санкт-Петербург Литейный пр., д. 26, Лит. А
+7 (812) 403-06-99
700 300
ООО «ИТГЛОБАЛКОМ ЛАБС»
700 300

Вам также может быть интересно...