Ошибка 502 Bad Gateway что значит и как ее исправить

Контент-маркетолог
Стаж 15 лет

Ошибка 502 (ERROR 502 Bad Gateway) — это сбой, который свидетельствует о получении некорректного ответа от вышестоящего по иерархии сервера. Простыми словами это получение неправильного ответа, приводящего к невозможности загрузить контент страницы.

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

Чаще всего возникает по вине хостинга, DNS или прокси-сервера. Логика появления ошибки следующая: файлы публичного веб-сайта всегда располагаются на сервере. Пользовательский клиент (чаще всего, браузер) делает соответствующий запрос, чтобы получить данные из физического сервера и вывести их на пользовательском компьютере. Когда отправить файлы не получается — выводится ошибка с кодом от 500-й до 511-й.

Сам текст ошибки 502 может различаться. Часто встречаются варианты 502 Server Error, Bad Gateway, Temporary Error, HTTP 502 и другие. 

Как исправить ошибку 502 вебмастеру: пошаговый алгоритм

Рассмотрим возможные причины и разберем алгоритм исправления источника ошибки.

Недостаток вычислительных ресурсов. Тарифный план хостинга

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

Что делать?

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

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

  3. Проверьте оперативную память сервера. Чтобы проверить текущий объем оперативной памяти, запустите командую строку сервера, затем укажите команды free -m (либо команду tor).
Проверяем доступный объем памяти сервера. MiB Mem — постоянная память. Mib Swap — память файла подкачки
Проверяем доступный объем памяти сервера. MiB Mem — постоянная память. Mib Swap — память файла подкачки

Обратите внимание на параметры total (общий объем памяти), free (свободный объем памяти в данный момент), used (использующийся объем памяти в данный момент).

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

Увеличение лимитов FastCGI

HTTP-сервер Apache настраивается путем размещения директив в текстовых файлах конфигурации. Основной файл конфигурации обычно называется httpd.conf. Его расположение устанавливается во время компиляции, но может быть переопределено флагом командной строки -f.

Проект HTTP-сервера Apache, широко известный как Apache HTTPD или Apache, представляет собой HTTP-сервер с открытым исходным кодом, на котором работает большая часть веб-приложений. Apache HTTPD является кроссплатформенным и может работать в системах на базе Unix и Windows.

Что делать?

  1. Найдите и отредактируйте файл httpd.conf. 
  2. Измените установленное значение для FastCGI. 
  3. Увеличьте его на 500-600 пунктов.

Обратите внимание: директива клиент-серверного протокола FastCG в конфигурационном файле обозначается как mod_fastcgi:

Пример содержимого файла httpd.conf
Пример содержимого файла httpd.conf

Глобальные изменения на сайте: обновления, установка плагинов, изменение дизайна или структуры URL

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

Что делать?

  1. Найдите файл с логами. Обычно кнопка с доступом к логам сервера есть в административной панели. Самое частое название такого файла — access.log. Если вы не нашли его — напишите в саппорт хостинга. Уточните, что серверные логи нужны вам для решения ошибки.
  2. Проанализируйте файл с ошибками. Логи сервера с ошибками обычно по умолчанию отправляются в файл error.log
  3. Ищите значение OOM или другие ошибки. Обязательно обращайте внимание на директиву %s со значением 502 (это и есть код состояния искомой нами ошибки).

Директивы в формате combined выглядят так:

  • %s — код состояния HTTP.
  • %h — IP-адрес запроса.
  • %{User-Agent} — HTTP-заголовок.
  • %l — полное название хоста.
  • %b — отданные байты.
  • %u — пользователь.
  • %r — тип и содержимое запроса.
  • %t — время запроса.

Cloudflare

Если вы настроили Cloudflare или похожее решение против хакерских атак, попробуйте отключить эту защиту. Часто Bad Gateway ошибка возникает по вине таких сервисов. То же самое можно сказать и о сторонних сетях доставки содержимого (СDN), с которыми соединен ваш сайт.

Капча, которая используется сетью Cloudflare для защиты сайта от хакерских атак
Капча, которая используется сетью Cloudflare для защиты сайта от хакерских атак

Что делать?

  1. Временно отключите Cloudflare.
  2. Временно отключите CDN (сеть доставки содержимого).
  3. Проверьте, стала ли доступна проблемная страница. Если да — настройте используемые внешние сервисы так, чтобы они не ограничивали доступ к странице.

Важно: отключение вашего сайта от любых сервисов, которые перенаправляет ваш трафик на собственные сервера (например, тот же CloudFlare) произойдет не сразу, а только через 5-6 часов или даже дольше, так как должно произойти обновление записей DNS.

Конфликт плагинов, проблемы после обновления CMS

Всегда запоминайте (а лучше — записывайте) все изменения, которые вы делаете на сайте. Будь то установка плагина, добавление нового функционала или изменение дизайна страницы. Так вы сможете просто диагностировать источник появления ошибки 502 и сразу перейти к его устранению. Например — удалить конфликтующий плагин через админку используемой CMS.

Откат к исправно работающей версии сайта может стать решением Bad Gateway в ряде случаев.

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

Что делать?

Показываем на на примере хостинга Beget:

  1. Чтобы откатиться к исправно работающей версии сайта, откройте раздел Backup в панели управления используемого хостинга. 
  2. Раздел BackUp на хостинге Beget доступен с главной страницы
    Раздел BackUp на хостинге Beget доступен с главной страницы

    Вы можете настроить автоматическое копирование или бэкап по требованию. 

  3. Чтобы выгрузить файлы (создать бэкап), выберите необходимые файлы, отметив чекбокс слева от них:
  4. Выгружаем резервную копию выбранных данных на хостинге Beget
    Выгружаем резервную копию выбранных данных на хостинге Beget
  5. Чтобы восстановить сайт из резервной копии, выберите копию (в Beget «Текущее состояние») и затем кликните по синей стрелке: 
  6. Восстанавливаем файлы сайта из резервной копии
    Восстанавливаем файлы сайта из резервной копии
  7. Далее следуйте подсказкам хостинга, чтобы восстановить работоспособность сайта из бэкапа максимально корректно.

Как исправить ошибку 502 пользователю: пошаговый алгоритм

Мы уже отмечали в начале, что источник Bad Gateway чаще всего находится на стороне сервера, поэтому пользователь устранить эту ошибку самостоятельно не сможет.  

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

Чтобы устранить ошибку, выполните следующие действия:

  • Напишите администратору сайта о возникшей проблеме.
  • Попробуйте зайти на сайт в то время, когда поток пользователей небольшой (например, очень рано утром или ночью).
  • Отключите все плагины / расширения в используемом браузере (в редких случаях они могут приводить к конфликтам). Подтвердить этот источник сбоя поможет просмотр проблемного сайта в режиме инкогнито.
  • Очистите DNS-кэш в своей системе. Для этого нужно открыть встроенный в Windows инструмент cmd и прописать команду ipconfig /flushdns:
Запустите командную строку и укажите команду ipconfig /flushdns
Запустите командную строку и укажите команду ipconfig /flushdns

Все, DNS cache успешно очищен:

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

Резюме: самые частые причины появления ошибки

Итак, можно вывести четыре самых распространенных сценария появления Bad Gateway на сайте:

  1. Недостаток вычислительных ресурсов. Может проявляться на очень слабых, старых машинах.
  2. Глобальные изменения на сайте: обновления, установка плагинов, изменение дизайна или структуры ссылок.
  3. Конфликт плагинов. Проблемы после обновления версии CMS.
  4. Cloudflare и подобные сервисы + CDN (сеть доставки содержимого).

Найдите свою причину и устраните ее, следуя нашему алгоритму. 

Оценить статью
9 ответов

Комментарии

Написать комментарий
Популярные статьи автора
Узнайте стоимость продвижения сейчас
Выберите удобный способ связи:
Выберите удобный способ связи:
Введите Ваш номер телефона:
Введите адрес Вашего сайта:
Введите Ваше имя:
Нажимая кнопку «Получить предложение» вы соглашаетесь с Политикой конфиденциальности.
Введите Ваш Email:
Введите адрес Вашего сайта:
Введите Ваше имя:
Нажимая кнопку «Получить предложение» вы соглашаетесь с Политикой конфиденциальности.
Оперативно отвечаем в рабочее время: с 10:00 до 19:00
Оперативно отвечаем в рабочее время: с 10:00 до 19:00
Вы уже проголосовали
Возьмем ТОП вместе?
Нажимая кнопку «Оставить заявку» вы соглашаетесь с Политикой конфиденциальности.
Цена лидов в различных нишах
Тематика Стоимость лида (Москва/Россия)
Отдых 500
Мебель 350
Оборудование 500
Бансковские услуги 500
Безопасность 500
Организация мероприятий, концерты, праздники 500
Недвижимость 500
Строительство и отделка 500
Грузоперевозки 500
Доставка еды 350
Юридические услуги 500
Бухгалтерские услуги 500
Пластиковые окна 500
Детские товары 350
Автозапчасти 350
Образование 500
Возьмем ТОП вместе?
Нажимая кнопку «Оставить заявку» вы соглашаетесь с Политикой конфиденциальности.
Оставить заявку сейчас
Выберите интересующую услугу *
Нажимая кнопку «Оставить заявку» вы соглашаетесь с Политикой конфиденциальности.
Подпишитесь на рассылку
Не пропустите самое интересное из мира SEO и Digital. Только актуальные и самые крутые статьи.
Заявка успешно отправлена!
Наши сотрудники уже приступили к анализу Вашего сайта. Наш менеджер свяжется с вами в течение дня, спасибо!