Почему на веб-серверах возникает ошибка 502 bad gateway и как ее исправить?

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

502 bad gateway — что это за ошибка? Ошибка 502 Bad Gateway может проявляться по-разному. К примеру, 502 – Service Temporarily Overloaded или HTTP Error 502 Bad Gateway.

Ошибка 502 bad gateway — что это значит?

Ошибка 502 bad gateway говорит о том, что обратный прокси-сервер (допустим, Apache) для сервера источника (например, nginx) получает некорректный ответ от исходного веб-сервера.

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

  1. Перегруженность сервера. Веб-сервер может падать из-за нехватки ресурсов (например, оперативной памяти), вызываемой избытком выполняемых процессов или агрессивными действиями пользователей;
  2. Частая перезагрузка веб-сервера. Такое случается при ошибках конфигурации, сбоях в модулях, любых атаках, избытке выполняемых процессов и приложений. В результате пользователь видит временную 502 ошибку;
  3. Плохой код сайта. Сайты с устаревшими приложениями или корявым кодом влияют на правильное функционирование сервера и ведут к периодическому возникновению 502 ошибки;
  4. Ошибки сети. Прочие ошибки конфигурации сети (проблемы с DNS, маршрутизация, блокировка файерволом, используемым на сервере, проблемы у провайдера) также становятся причиной появления 502 ошибки сервера;
  5. Время ожидания серверного программного обеспечения. 502 ошибка неизбежна при снижении скорости выполнения запросов в nginx, когда средство кэширования (например, Varnish Cache) уходит в таймаут. Сюда же относятся и медленные запросы.

Как исправить ошибку 502 bad gateway на веб-сервере nginx

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

Затем мы покопались в конфигурации сервера, и увидели, что там отсутствовал модуль mod_rpaf. Именно это и вызывало падение сервера:

root@server [~]# ls -l /usr/local/apache/modules/mod_rpaf-2.0.so
/bin/ls: cannot access /usr/local/apache/modules/mod_rpaf-2.0.so: No such file or directory

Rpaf – это модуль Reverse proxy add forward, разработанный для серверов Apache. Он нужен в том случае, если вы задаете Nginx фронденд-сервером и хотите получить реальный IP серверных запросов.

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

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

Вот несколько советов, как исправить ошибку 502 bad gateway:

  • Следите за тем, чтобы файлы сайта (плагины и темы) своевременно обновлялись и не устаревали;
  • Оптимизируйте и исправляйте медленные MySQL-запросы;
  • Проводите аудит серверного программного обеспечения и вовремя обновляйте модули;
  • Избегайте проблем с маршрутизацией и отслеживайте любые перегрузки/атаки на сервер.

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

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

ОСОльга Сайфудиноваавтор статьи «HOW TO FIX «502 SERVER ERROR – BAD GATEWAY» IN WEB SERVERS»

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

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

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

Самая частая причина Ошибки 502

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

502 Server Error

Bad Gateway

Также может быть такое отображение:

Или такое:

Вариаций отображения страницы и формулировок больше десяти.

Способы исправить Error code 502 для веб-мастера

Рассмотрим наиболее распространенные проблемные зоны и что стоит делать веб-мастеру в таком случае.

Из-за тарифного плана хостинга недостаточно производительности.

  • Проверьте нагрузку, оперативную память и объем хранилища на хостинге. 

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

Увеличьте лимиты FastCGI

Найдите файл httpd.conf. Далее увеличьте установленное значение FastCGI на 600 пунктов. Смотрите на скриншоте пример содержимого файла: 

Ошибка из-за недавних изменений на сайте

  • Найдите в административной панели файл с логами сервера. С поиском вам также может помочь менеджер хостинга. Сообщите ему о возникшей ошибке.

  • Посмотрите файл с ошибками на предмет новых неисправностей.

  • Ищите показатели со значением кода 502, здесь, вероятно, и будут нужные вам неполадки.

Работает защита от хакерских атак

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

Вы недавно добавили новый плагин

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

8 советов для пользователя

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

Если ошибка на стороне сервера, пользователь ее никак не исправит. Но когда ошибка возникла из-за других неполадок, можно попробовать несколько способов. Например:

  1. Обновить страницу, вдруг это временный сбой. Убедитесь, что подключение к интернету достаточно стабильное.

  2. Перезагрузите свой роутер.

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

  4. Зайти на сайт чуть позже, когда поток посещений будет ниже.

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

  6. Быстро сообщить об ошибке администратору сайта или менеджеру в онлайн-чате.

  7. Зайдите на сайт, используя другой браузер. Если сайт открылся, стоит почистить кэш первого браузера. Для этого нужно зайти в историю браузера, выбрать удаление и поставить галочки напротив пунктов об удалении файлов cookies и кэша.

  8. Почистите DNS-кэш в своей системе. Для этого нужно ввести в командную строку ipconfig /flushdns. После выполнения команды вы увидите следующее:

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

Для этого регулярно смотрите в сервисы аналитики и не упускайте ни одного инцидента с сайтом.

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

502 тайм-аут шлюза — быстрый способ исправить это

от Jilu Joseph | 24 апреля 2019 г.

«Тайм-аут шлюза 502» — это распространенная ошибка сервера, которая вызывает у многих наших клиентов головную боль.

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

Существует множество причин возникновения этой ошибки, например, неверные настройки сервера в DNS, настройки времени ожидания PHP и многое другое.

Мы в Bobcares часто получаем запросы от клиентов на устранение ошибок сервера в рамках наших услуг технической поддержки.

 

Что такое 502 Ошибка тайм-аута шлюза?

Ошибка с кодом ответа HTTP «502 тайм-аут шлюза» указывает на недопустимый ответ внутреннего сервера на пограничный сервер.

Эта ошибка «502 timeout gateway timeout» возникает, если для выполнения запросов на внутреннем сервере требуется больше времени. Кроме того, это может произойти из-за неправильных настроек DNS, брандмауэр блокирует запрос прокси-сервера и отключает внутренний сервер.

Теперь давайте посмотрим, как наши инженеры службы поддержки исправят ошибку «502 gateway timeout».

 

 

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

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

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

 

Проблема с DNS

Ошибка шлюза 502 может возникнуть из-за проблемы с DNS, например, домен не разрешается в правильный IP-адрес.

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

1. Затем наши инженеры службы поддержки проверили настройки DNS веб-сайта с помощью серверной командной утилиты, такой как «dig».

 копать bobcares.com 

2. Исходя из этого, они могли проанализировать, что домен не разрешен к правильному IP.

3. Мы обновили правильный IP-адрес для Запись в WHM >> Главная >> Функции DNS >> Редактировать зону DNS.

Кроме того, мы попросили клиентов подождать до 48 часов для полного распространения записи DNS.

Это устранило проблему, и клиент смог получить доступ к сайту.

 

Ошибка тайм-аута PHP

Проблемы тайм-аута PHP могут вызвать ошибку тайм-аута 502. Опять же, эта ошибка возникает, когда один процесс PHP выполняется более max_execution_time или max_input_time.

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

В Apache на Ubuntu мы предприняли следующие шаги для редактирования php. ini для изменения значений времени ожидания PHP.

1. Мы отредактировали файл php.ini

 nano /etc/php5/apache2/php.ini 

2. Затем мы нашли строку для «max_execution_time», , которая определяет, сколько секунд PHP процесс может работать.

3. Увеличили значение и сохранили изменения.

 max_execution_time = 30 

4. Наконец, перезапустите службу.

 перезапуск службы apache2 

 

Брандмауэр блокирует запрос

На большинстве серверов брандмауэр установлен по умолчанию.

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

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

 

Проблемы с веб-браузером

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

  1. Очистка кеша веб-браузера.
  2. Удалите файлы cookie вашего браузера.
  3. Запустите браузер в безопасном режиме.
  4. Попробуйте другой браузер.
  5. Перезагрузите компьютер.
  6. Перезапустите сетевое оборудование, такое как модем, маршрутизатор, коммутаторы.

 

[Ошибка тайм-аута шлюза 502? Мы здесь, чтобы исправить это.]

 

Заключение

Короче говоря, ошибка HTTP «502 gateway timeout» — это код ответа. Это происходит, когда пользователи пытаются посетить веб-страницу, но пограничный сервер получает недопустимый ответ от внутренних веб-серверов. Сегодня мы увидели, как наши инженеры службы поддержки решили ошибку 502 тайм-аут шлюза.

ПРЕДОТВРАТИТЕ СБОЙ СЕРВЕРА!

Никогда больше не теряйте клиентов из-за низкой скорости сервера! Позвольте нам помочь вам.

Наши специалисты по серверам будут контролировать и обслуживать ваш сервер 24/7, чтобы он оставался молниеносно быстрым и безопасным.

НАЧАТЬ

var google_conversion_label = «owonCMyG5nEQ0aD71QM»;

Что это такое и как это исправить

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

В этой статье мы рассмотрим ошибку 502 Bad Gateway Error , которая указывает на то, что сервер где-то в стеке серверов, в частности, тот, который сам действует как шлюз или прокси-сервер, получил недопустимый ответ от другой сервер . Проблема заключается в другом восходящем сервере, что означает, что этот сервер обслуживает систему, от которой вы получили ошибку 502. Чтобы помочь вам решить такие ошибки, вот несколько советов по устранению неполадок и возможных исправлений для распространенных причин. Давайте идти!

Проблема на стороне сервера

Прежде чем мы начнем, стоит отметить, что, как и большинство кодов ответов HTTP, ошибка 502 указывает , что что-то пошло не так на сервере вашего приложения, а не на стороне клиента. . Если вы пытаетесь диагностировать проблему с вашим приложением, вы можете сразу же игнорировать большую часть клиентского кода и компонентов. Сюда входят HTML, каскадные таблицы стилей (CSS), клиентский JavaScript и т. д. Это не относится к только на веб-сайты.

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

Диагностика ошибки 502 Bad Gateway

Как уже упоминалось, ошибка 502 Bad Gateway означает, что клиент испытывает трудности с подключением к серверу. Это означает, что сервер, создающий ошибку 502, действует как шлюз. Давайте обсудим, что такое шлюз (или прокси).

Клиент будет подключаться к серверу через сторонний шлюз в большинстве HTTP-соединений. Шлюз действует как шлюз , где клиент безопасно отправляет сообщения на сервер и наоборот. Шлюз действует как узел в более крупной сетевой паутине, соединяя и направляя сообщения между несколькими клиентами, серверами и другими типами узлов в пределах (виртуальной) окрестности.

Хотите верьте, хотите нет, но в большинстве домов с доступом в Интернет есть активный шлюз. Ваша локальная домашняя сеть, которая, скорее всего, настроена через маршрутизатор (или гибрид маршрутизатора и модема), обычно назначает IP-адреса всем устройствам в вашей сети, используя базовый адрес 19.2.168.1.*, где звездочка меняется в зависимости от устройства.

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

Выполните тщательное резервное копирование приложений

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

Отладка распространенных платформ

Если стандартный программный пакет выдает ошибку 502 Bad Gateway Error, сначала проверьте стабильность этих платформ. Наиболее распространенные системы управления контентом (CMS), такие как WordPress, Joomla! и Drupal, хорошо протестированы сразу после установки. Как только вы начнете вносить изменения в базовые расширения или код PHP (язык, на котором написаны почти все современные системы управления контентом), легко вызвать непредвиденную проблему, которая приведет к ошибке 502.

Вот несколько советов, которые помогут вам устранить неполадки некоторых из этих популярных программных платформ:

Откат последних обновлений

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

Чтобы получить помощь, просто наберите в Google «понижение версии [PLATFORM_NAME]» и следуйте инструкциям. Однако некоторые CMS не предоставляют возможности понижения версии, что указывает на то, что они считают базовое приложение, а также каждую новую выпущенную версию чрезвычайно стабильным и не содержащим ошибок. Обычно это относится к более популярным платформам.

Удаление новых расширений, модулей или подключаемых модулей

В зависимости от CMS названия этих компонентов будут разными, но они служат одной цели. Расширения помогают улучшить возможности и функции платформы сверх того, на что она обычно способна из коробки. Будьте осторожны: эти расширения могут получить полный контроль над системой и вносить практически любые изменения. Например, расширения могут изменять код PHP, HTML, CSS, JavaScript или базу данных. Если вы видите ошибку 502 Bad Gateway Error, попробуйте удалить все новые расширения.

Проверка на наличие непредвиденных изменений базы данных

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

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

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

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

Прежде всего, Google — ваш друг. Найдите конкретные термины, связанные с вашей проблемой, например, название CMS вашего приложения, а также ошибку 502 Bad Gateway. Скорее всего, вы найдете кого-то, кто столкнулся с этой проблемой и поделился решением.

Прежде всего, Google — ваш друг. Найдите конкретные термины, связанные с вашей проблемой, например, название вашей CMS, а также ошибку 502 Bad Gateway. Скорее всего, вы найдете кого-то, кто столкнулся с этой проблемой и имеет решение.

Устранение неполадок на стороне сервера

Если вы не используете приложение CMS или знаете, что ошибка 502 Bad Gateway не связана с вашей CMS, вот несколько дополнительных советов, которые помогут вам устранить неполадки, которые могут быть причиной проблема на стороне сервера вещей:

Последние изменения DNS

Система доменных имен (DNS) — это децентрализованная система именования для устройств, подключенных через сеть. Короче говоря, DNS связывает доменные имена (например, airbrake.io) с определенными IP-адресами. Затем он сохраняет эту ассоциацию в ряде авторитетных серверов имен, разбросанных по всему миру.

Когда вы просите свой компьютер подключиться к airbrake.io, ваш компьютер фактически проверяет ближайший сервер имен DNS, чтобы найти и подключиться к определенному IP-адресу. Трафик направляется на IP-адрес (в данном случае 52.203.232.56).

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

Проблемы с подключением к серверу

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

Неправильная конфигурация брандмауэра

Брандмауэр — это базовое устройство безопасности, которое отслеживает сетевой трафик и действует как привратник, определяя, какой трафик является безопасным, а какой может быть вредоносным.

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

Проверка журналов

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

Google «logs [PLATFORM_NAME]», если вы используете CMS, или «logs [PROGRAMMING_LANGUAGE]» и «logs [OPERATING_SYSTEM]», если вы используете пользовательское приложение для получения дополнительной информации о поиске журналов.

Ошибки кода приложения или сценария

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

Если в вашем приложении появляется ошибка 502 Bad Gateway Error, рассмотрите возможность использования инструмента управления ошибками. Программное обеспечение Airbrake для мониторинга ошибок обеспечивает мониторинг ошибок в режиме реального времени и автоматические отчеты об исключениях для всех ваших проектов разработки. Airbrake гарантирует, что вы будете получать круглосуточные обновления состояния вашего приложения и частоты ошибок. Кроме того, независимо от того, над чем вы работаете, Airbrake легко интегрируется со всеми наиболее популярными языками и платформами.