25 сентября 2023 Время чтения: 8 минут

Команда хостинга Бегет

Кто виноват и что делать: 4 частые ошибки, из-за которых не открывается сайт

ispmanager

Привет! На связи команда хостинга Бегет. Мы предлагаем услуги виртуального хостинга, регистрацию доменных имен, а также виртуальные и выделенные серверы. Наша команда подготовила для читателей блога ispmanager материал с обзором частых ошибок в работе сайтов, причин их возникновения и советами по устранению. Желаем вам реже сталкиваться с ними и приятного прочтения.

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

first comics picture

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

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

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

Ошибка № 1: 403

first comics picture

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

Ошибка 403 (Forbidden) – это код состояния HTTP, который указывает на то, что сервер понял запрос, но отказывается его выполнить из-за ограничений доступа.

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

Такая ошибка может появиться вследствие:

  • неправильных настроек прав доступа на сервере – он может быть настроен таким образом, что определенные ресурсы доступны только для конкретных пользователей или их групп;
  • отсутствия аутентификации – если запрашиваемый ресурс требует аутентификации, а пользователь не предоставил соответствующих учетных данных, сервер может вернуть ошибку 403;
  • блокировки IP-адреса или ограничения при доступе – сервер может быть настроен для блокировки определенных IP-адресов или ограничения количества запросов от одного IP-адреса, что и может привести к ошибке 403;
  • запрета авторизованных пользователей на выполнение определенного действия – даже если пользователь успешно пройдет аутентификацию, он может не иметь прав доступа к определенным действиям или ресурсам.

Теперь пройдемся по самым популярным причинам ошибки 403 и вариантам ее исправления:

Отсутствие файла index.php или index.html

Файл index.(php/html) – это общепринятое название основного файла сайта, с которого начинается обработка запроса к сайту. Если этого файла нет, то сайт вернет 403 код ошибки. На самом деле точный код ошибки зависит от настроек веб-сервера, но в большинстве типовых конфигураций используется 403 код. Для решения этой проблемы нужно убедиться в том, что при разворачивании сайта не потерялся файл index и что в его названии нет ошибок. В ispmanager вы можете это сделать, перейдя к файлам сайта в верхнем меню в разделе «Сайты».

Прямой запрет на доступ к файлам сайта внутри конфигурационного файла веб-сервера

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

Настроенные ограничения или аутентификация на стороне веб-сервера

Одна из самых частых ситуаций – слишком общая настройка ограничений для защиты от DDOS-атак (например, если запрещен доступ для какого-либо браузера/страны), вторая распространенная ситуация – некорректная настройка правил аутентификации для доступа к определенным разделам сайта. В обоих случаях необходимо проверить настройки в конфигурационных файлах веб-сервера. С анализом и решением в этом случае тоже может помочь техподдержка хостинга либо профильные сторонние специалисты.

В последних двух случаях, когда речь идет о запрете на доступ к файлам сайта внутри конфигурационного файла веб-сервера и настройках аутентификации на стороне веб-сервера, пользователи ispmanager могут посмотреть файлы сайта прямо в панели, в разделе “Сайты”. При использовании веб-сервера apache подобные ограничения настраиваются в файле .htaccess в директории сайта.

Искать необходимо следующие строки (ниже приведены примеры правил, которые могут приводить к проблемам):
для запрета доступа:


Order Deny,Allow
  Deny from all

для настроек авторизации:


AuthName "Protected area, need authorization"
AuthType Basic
AuthUserFile /home/t/test/.authfile
require valid-user

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

Ошибка № 2: 500

first comics picture

Ошибка 500 (Internal Server Error) – это общий код состояния HTTP, который указывает на внутреннюю ошибку сервера. Она возникает, когда сервер не может выполнить запрос в результате какого-либо внутреннего сбоя или ошибки в работе серверного приложения.

Чаще всего ошибка 500 появляется, когда присутствуют ошибки в работе сайта, вызванные неправильной версией ПО (к примеру, сайты, несколько лет назад написанные на PHP 5.6, могут не работать на PHP 8, поскольку на современных ОС ставится актуальная версия) или ошибками в коде сайта.

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

В ispmanager логи можно посмотреть в разделе “Мониторинг и журналы” -> “Журналы WWW-запросов”. Анализировать необходимо файл лога ошибок, который называется: название_сайта.error.log. В нем содержатся ошибки веб-сервера.

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

Ошибка № 3: 503

first comics picture

Ошибка 503 Service Unavailable (сервис недоступен) возникает, если сервер временно не может обработать запрос из-за перегрузки или обслуживания. Проще говоря, когда сервер не может предоставить запрашиваемый ресурс или функцию в данный момент времени.

Эта ошибка может быть вызвана различными причинами, включая такие, как:

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

Самой частой причиной возникновения 503 ошибки, пожалуй, является большое количество запросов к сайту, из-за чего серверу не хватает ресурсов на их обработку.

Как показывает практика, чаще всего настолько большое количество запросов к сайту обычно вызвано DDOS-атакой, цель которой, собственно, вывести сервер из строя большим количеством запросов за короткий промежуток времени.

Для защиты от DDOS-атаки можно проанализировать логи доступа веб-сервера и заблокировать мусорные запросы на стороне веб-сервера по какому-либо паттерну (чаще всего атаки идут из какой-то конкретной страны или имеют один и тот же user-agent) либо подключить сервисы для защиты от DDOS-атак – например, Cloudflare или DDoS-Guard.

В ispmanager есть готовые интеграции с Cloudflare и DDoS-Guard, подключить их можно в разделе «Модули».

Ошибка № 4: 504

first comics picture

Ошибка 504 Gateway Timeout – это ошибка, которая возникает при попытке установить соединение между клиентом и сервером, если сервер не отвечает в установленный временной интервал (который и называется тайм-аутом).

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

Есть две ситуации, из-за которых может возникнуть 504 ошибка:

  1. Запросы к серверу должны обрабатываться в течение определенного длительного промежутка времени, но ограничение времени обработки запроса на веб-сервере меньше времени обработки самого запроса.

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

  2. Обычно запросы к серверу обрабатываются быстро, но по каким-либо причинам они начали обрабатываться долго.

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

Заключение

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

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

На самом деле сервер отдает трехзначные коды в ответ на любое обращение браузера к нему, даже если запрос обработан удачно (речь идет о серверных ответах, которые начинаются с цифр 1, 2 и 3), но пользователи сталкиваются только с кодами, обозначающими ошибку обработки запроса, а успешные ответы сервера остаются для них невидимыми.

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

Надеемся, эта статья была для вас полезна, а ваши сайты всегда будут работать исправно и бесперебойно — а мы готовы в этом помочь. Так, совсем недавно мы добавили в наш маркетплейс готовых решений для VPS панель ispmanager. Если вас интересует стабильный хостинг с отличной поддержкой – мы вас ждем :)