Ошибка 502 как вызвать

Опубликовано: вторник, 4 апреля 2023 г. в 20:32

  • DevOps

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

Поддерживать сервер сложно.

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

Одной из таких распространённых ошибок на серверах Nginx является 502 Bad Gateway.

Nginx Ошибка 502 Bad Gateway

Сообщение об ошибке загадочно.

Итак, многие веб-мастера засучивают рукава и смотрят error.log:

2017/04/04 08:34:43 [error] 949#949: *7 connect() failed (111: Connection refused) while connecting to upstream, client: XXX.XXX.XXX.XXX, server: myserver.com, request: "GET /myurl-this/ HTTP/1.0", subrequest: "/redis-fetch", upstream: "redis://127.0.0.1:6379", host: "refserver.com", referrer: "http://referalsite.com/myurl-this/"

Да, ещё больше непонятного…

Вы понимаете, что что-то напутано, потому что он сообщает failed (сбой) и refused (отказ).

Но что это означает?

Вот решение. Мы перечислили пять основных причин возникновения ошибки Nginx 502 Bad Gateway и способы их решения.

Сбой серверной службы

Nginx зависит от серверных служб, таких как PHP-FPM, служб баз данных и серверов кэша для запуска веб-приложений.

Таким образом, если какой-либо из этих сервисов выйдет из строя или зависнет, Nginx не получит никаких данных, что приведёт к ошибке 502 Bad Gateway.

Службы, которые, как мы видели, сбоили — это:

  • PHP-FPM
  • Apache
  • Cache
  • Database

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

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

Например, вот один из способов убить нефункционирующие процессы PHP-FPM и перезапустить службу.

$ kill -9 $(pgrep php-fpm)
$ /etc/init.d/php-fpm restart
* Restarting PHP FastCGI Process Manager php-fpm [ OK ]

Внимание: Не запускайте эти команды, если не знаете, как они работают.

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

Высокая нагрузка на сервер

Вторая наиболее распространённая причина ошибки Nginx 502 Bad Gateway является высокая средняя загрузка серверов.

Всплески нагрузки приводят к тому, что службы не отвечают. Мы видели следующие причины скачков нагрузки:

  • Внезапный всплеск посещаемости сайта (может быть сезонным или маркетинговым/рекламным).
  • Заражение вредоносным программным обеспечением (вирусы/трояны/майнеры/сканеры и т.д.) на сервере.
  • Рассылка спама в комментариях или использование других уязвимостей.
  • Брут форс атаки на веб-приложения.
  • Ошибки приложений, вызывающие утечку памяти или перегрузку ресурсов.

Для устранения проблем с высокой нагрузкой, сначала необходимо выяснить, какой ресурс используется (ввод/вывод, память, процессор или сеть).

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

Неправильная конфигурация сервиса

Сервер Nginx и серверные службы зависят от многих подсистем. Таких, как DNS resolver, процессы Apache, службы PHP, сервер базы данных и т.д. Если даже одна из этих служб имеет неправильную конфигурацию, эта служба не сможет ответить, и Nginx покажет ошибку 502 Bad Gateway.

Проблемы с конфигурацией, с которой мы сталкивались:

  • DNS resolver неправильно настроен в Nginx, что приводит к сбою поиска домена.
  • Данные логина БД настроены неправильно после недавней миграции, восстановления или обновления.
  • Синтаксическая ошибка настроек брандмауэра Apache (mod-security), вызывающая сбой Apache.
  • Для приложений PHP установлены неправильные ограничения памяти или файлов.
  • Ограничения пропускной способности (например, количество подключений на IP-адрес) установлены слишком строго, что приводит к сбою легальных посетителей.
  • …и многое другое.

Не существует простого способа обнаружения ошибки конфигурации. Вам нужно просмотреть error.log и обратить внимание на то, что написано об ошибке.

Например, эта ошибка сообщает, что приложение PHP достигло максимально допустимого предела процессов (определяемого параметром pm.max_children).

WARNING: [mysite.com] server reached max_children setting (30), consider raising it
ERROR: unable to read what child say: Bad file descriptor (9)

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

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

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

Например, на серверах Linux, на которых работает пакет автоматизации Plesk, Nginx работает на 80 порту, а Apache на 7080. Но брандмауэры/файрволлы по умолчанию блокируют необычные порты, и это приведёт к том, что Nginx не сможет подключиться к Apache.

Результат? Ошибка 502 Bad Gateway.

Такие проблемы часто возникают при включении новой службы (например, кэширующий сервис, Ruby, и т.д.) в бэкенде, во время миграции или после обновления сервера.

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

$ netstat -lpn
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 19785/nginx
tcp6 0 0 :::80 :::* LISTEN 19785/nginx

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

Ошибки веб-приложений

Редким случаем ошибки 502 Bad Gateway является ошибка приложения.

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

[notice] child pid 27831 exit signal Segmentation fault (11)

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

Итог

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

Загружая страницу, браузер отправляет кучу запросов другим серверам. Они обрабатывают все запросы, затем возвращают код ответа HTTP с определенным результатом. Если в процессе этого возникнет какой-то сбой, на экране браузера отобразится ошибка. И одна из таких ошибок – 502 Bad Gateway. Я расскажу, что она означает, по каким причинам выходит, а еще опишу способы ее устранения.

Что означает ошибка 502 Bad Gateway

Ошибки, принадлежащие серии 5xx, означают появление проблем на стороне сервера. Если взять конкретно ошибку 502 Bad Gateway, то ее появление будет означать получение неправильного ответа сервера. «Виновниками» в такой ситуации обычно являются прокси, DNS или хостинг-серверы.

Комьюнити теперь в Телеграм

Подпишитесь и будьте в курсе последних IT-новостей

Подписаться

Что делать, если вы пользователь

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

Перезагрузить страницу

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

Проверить подключение к интернету

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

Очистить кэш и cookies

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

Для любого браузера актуально – зайти в историю просмотров и найти ссылку «Очистить историю». В новом окне отметить пункты с кэшем и cookies, затем подтвердить действие. Как только данные будут удалены, надо вновь попробовать загрузить страницу. Не помогло? Идем дальше!

Очистить кэш DNS

Допустимо, что в кэше установлено неправильное значение IP-адреса. Для таких случаев можно использовать сброс DNS кэша. В ОС Windows необходимо открыть инструмент «Командная строка» (вводим в поисковую строку название программы и выбираем запуск от имени администратора).

Далее следует ввести вот такую команду и активировать ее нажатием на клавишу Enter:

ipconfig /flushdns

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

Как очистить кэш DNS через командную строку Windows

Для Linux действие примерно схоже, но команда выглядит иначе. Открываю утилиту «Терминал» и ввожу в поле вот такой запрос:

Для Ubuntu:

sudo service network-manager restart

Для других дистрибутивов:

sudo /etc/init.d/nscd restart

Попробовать зайти с другого браузера

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

Отключить плагины и расширения

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

Зайти на страницу позже

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

Читайте также

Ошибка 400 Bad Request

Что такое ошибка 500 и когда она возникает

Что делать, если вы администратор сайта

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

Проверка журнала ошибок

Актуально в случаях, при которых ошибка 502 Bad Gateway появляется после внесения изменений или обновления. Определить это очень просто, нужно лишь проверить журнал ошибок. В CMS WordPress можно включить запись возникающих ошибок, добавив в файл wp-config.php вот такие строки:

define( 'WP_DEBUG', true );

define( 'WP_DEBUG_LOG', true );

define( 'WP_DEBUG_DISPLAY', false );

После этого все записи начнут отображаться в файле debug.log. Храниться он будет в директории wp-content. Понадобится некоторое время, чтобы причины ошибок были записаны. Потом можно тщательно изучить записи и уже на основе их предпринимать конкретные изменения.

Проверка плагинов

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

Отключение плагина в WordPress путем переименования папки

Проверка сети CDN

Сети CDN и службы предотвращения DoS тоже могут влиять на работу сайта. Обычно виновник проблемы указывается на странице с кодом ошибки. Например, если под кодом 502 Bad Gateway есть строка cloudflare-nginx, значит, для исправления ошибки надо обратиться в службу поддержки CloudFlare. Можно отключить данный сервис, но потом придется долго ждать обновления DNS (это может занять несколько часов).

Один их вариантов отображения ошибки 502 Bad Gateway

Ошибка 502 на виртуальном хостинге VPS/VDS

Ошибка 502 Bad Gateway возникает из-за превышения лимита трафика пользователей, «шалостей» бота, скачивания сайта или даже DoS‑атаки. Решение данной проблемы кроется в ограничениях памяти.

Запустить команду top

Данный запрос в терминале поможет установить наличие свободной памяти. Этим же способом можно проверить, работает ли Apache.

Посмотреть логи Apache и nginx

Обычно в этих логах отображается активность пользователей. Если есть что-то подозрительное, можно предпринять действия. К примеру, забанить определенные IP-адреса, настроить Fail2ban или подключить систему защиты от DoS-атак.

Если после этого количество запросов к серверу снизилось, необходимо перезапустить Apache.

Увеличить объем памяти

Бывает, что с логами все нормально, но памяти на обработку запросов все равно не хватает. Узнать об этом просто – при проверке командой top будет выдана ошибка OOM (out of memory). В таких случаях можно просто увеличить ее объем. Можно просто заказать другой тариф, в котором количество предоставляемой памяти больше. Подробнее об этом.

Проверить лимиты на php-cgi процессы

Если после проверки командой top показано, что свободной памяти еще достаточно, значит, на php-cgi процессы установлены лимиты. Для решения надо открыть конфигурационный файл Apache – httpd.conf, найти секцию модуля FastCGI (mod_fascgi или mod_fastcgid) и увеличить лимит.

Обратиться к службе технической поддержки

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

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

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

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

Если сервер точно отвечает на запросы, он получает запрошенный контент. В противном случае появится экран 502 Bad Gateway Error.

Веб-сайты WordPress работают на нескольких серверах, выделенных для конкретной задачи. Например:

  • Сервер баз данных для баз данных WordPress,
  • Сервер приложений для запуска PHP и другого контента, связанного с приложениями,
  • Обратный прокси-сервер, отвечающий за Nginx, Apache, Varnish,
  • Веб-сервер для обслуживания файлов веб-сайта.

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

Если какой-либо из этих серверов отправит неверный ответ, обратный прокси-сервер вернется в браузер и отобразит ошибку 502 Bad Gateway.

Мы часто видим ошибку 502 Bad Gateway Error на разных сайтах по-разному, но все они указывают на одно и то же: сервер не может отвечать на запросы. Давайте посмотрим на некоторые примеры, которые показывает эта ошибка.

  • «502 Неверный шлюз»
  • «Ошибка HTTP 502, плохой шлюз»
  • «Служба 502 временно перегружена»
  • «Ошибка 502»
  • «502 Ошибка прокси-сервера»
  • «HTTP 502»
  • «502 Плохой шлюз NGINX»
  • «Ошибка сервера 502: сервер обнаружил временную ошибку и не смог выполнить ваш запрос»
  • «502. Это ошибка. Сервер обнаружил временную ошибку и не смог выполнить ваш запрос. Повторите попытку через 30 секунд. Это все, что мы знаем.»

502 плохой шлюз nginx

Twitter отображает 502 Bad Gateway Error в более дружелюбной форме.

твиттер ошибка 502

Google отображает ошибку 502 Bad Gateway Error с предложением повторить попытку через некоторое время.

ошибка гугл 502

Теперь, когда мы поняли, что такое ошибка 502 Bad Gateway и как ее отображают разные веб-сайты. Давайте продолжим и рассмотрим, что вызывает эту ошибку и как мы можем исправить ее в WordPress?

Почему в WordPress возникает ошибка 502 Bad Gateway?

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

  • Ваш сервер занят другими задачами или страдает от всплесков трафика
  • Исходные серверы не отвечают или недоступны
  • Ошибки в базе
  • Проблема с обратным прокси-сервером
  • Поврежденные PHP-скрипты в файлах WordPress
  • WordPress CDN капризничает
  • Проблемы с DNS

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

Как 502 Bad Gateway влияет на SEO

Если ваш сайт часто отключается из-за ошибки 502 Bad Gateway, это также повлияет на трафик вашего сайта. Представьте, что ваш посетитель получает эту ошибку на вашем сайте; он может не посетить ваш сайт в следующий раз. Точно так же это повлияет на сканирование и индексацию вашего сайта из-за его недоступности. Следовательно, вы потеряете свой органический рейтинг и трафик.

Исправить ошибку 502 Bad Gateway в WordPress

Это самые простые способы исправить ошибку 502 Bad Gateway в WordPress.

  1. Проверить хостинг-сервер
  2. Перезагрузить веб-страницу
  3. Очистить кеш браузера
  4. Проверить проблемы с DNS
  5. Очистить кеш DNS
  6. Отключить CDN/брандмауэр
  7. Аудит Темы/Плагины
  8. Проверить журналы ошибок
  9. Установить время ожидания PHP
  10. Проверьте пользовательские сценарии

1. Проверьте хостинг-сервер

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

онлайн сканирование сайта

Несколько мест пропингуют ваш сервер и покажут вам статистику, такую ​​​​как время загрузки, потеря пакета и время ответа.

Еще один способ проверить скорость отклика вашего веб-сервера — пропинговать его вручную с помощью SSH. Просто войдите в терминал SSH и выполните следующую команду:

  1. пинг ( IP сервера )

Теперь замените «IP-адрес сервера» на IP-адрес вашего сервера.

ip сервера пинга

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

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

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

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

2. Перезагрузите веб-страницу

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

Кроме того, подтвердите, не работает ли веб-сайт для вас или всех остальных. Чтобы сделать это, проверьте URL-адрес в разделе « Вниз для всех» или «Только для меня».

вниз для всех или только для меня

Если веб-сайт доступен для всех остальных, проблема на вашей стороне. Попробуйте сменить веб-браузер.

3. Очистить кеш браузера

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

Допустим, вы зашли в другой браузер, и веб-страница загрузилась нормально. Зная, что ваша веб-страница загружается правильно, вы возвращаетесь к браузеру по умолчанию, но проблема остается. Это потому, что ваш браузер отображает кешированную копию этой веб-страницы. Чтобы это исправить, очистите кеш браузера с помощью Ctrl+Shift+Del (для Windows) или Shift+Cmd+Del (для Mac).

очистить данные просмотра

4. Проверьте проблемы с DNS

Система доменных имен (DNS) — это способ связать доменное имя с IP-адресом. Если домену не удается преобразовать правильный IP-адрес, это может вызвать ошибку 502 Bad Gateway. Обычно это происходит при переносе сайта WordPress на новый хост, который требует изменений в сервере имен DNS.

Для распространения изменений DNS может потребоваться от 24 до 36 часов. Если вы попытаетесь получить доступ к своему сайту в течение этого периода, вы можете получить ошибку WordPress 502 Bad Gateway.

5. Очистите кеш DNS

Вы можете очистить кеш DNS из командной строки Windows. В Windows запустите команду ipconfig/flushdns, чтобы очистить кеш DNS. В Mac запустите команду как dscacheutil -flushcache в окне терминала.

очистить кеш днс

6. Отключить CDN/брандмауэр

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

CDN обслуживает статический контент веб-сайта и быстрее загружает ваш сайт для глобальной аудитории. Напротив, брандмауэр защищает ваш сайт от DDoS и других онлайн-атак. Однако CDN/брандмауэр может быть одной из причин ошибки 502 Bad Gateway в WordPress из-за дополнительного слоя между сервером и браузером.

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

7. Аудит тем/плагинов

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

Начните с деактивации всех плагинов с FTP. Просто войдите в свой корневой каталог, где установлены ваши файлы WordPress, то есть в папку public_html, перейдите в wp-content → plugins и переименуйте папку plugins, чтобы она стала недоступной для вашего сайта.

переименовать директорию плагина

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

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

переименовать директорию темы

На следующем шаге обновите свой веб-сайт, и если вы увидите белый экран вместо ошибки, проблема была вызвана вашей темой. Войдите в свой wp-admin и активируйте тему WordPress по умолчанию.

8. Проверьте журналы ошибок

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

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Журналы находятся внутри папки wp-content. Если вы являетесь пользователем gohost, вы можете воспользоваться интегрированным инструментом мониторинга New Relic для точного и всестороннего анализа.

новая реликвия в облаках

9. Установите время ожидания PHP

Когда PHP достигает максимального времени в конфигурации сервера для выполнения скрипта, он показывает ошибку. Иногда это может вызвать ошибку WordPress 502 Bad Gateway. Чтобы этого избежать, просто увеличьте максимальное значение времени выполнения. По умолчанию установлено значение 300 секунд, что составляет 5 минут.

10. Проверьте пользовательские сценарии

Мы создаем пользовательские функции и темы в WordPress. Иногда наш веб-сервер не обрабатывает эти пользовательские функции. Кроме того, вызов сторонних API, таких как Google reCAPTCHA, который генерирует длинные токены, может вызвать нагрузку на сервер и показать ошибку 502 Bad Gateway Error.

Резюме

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

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

Часто задаваемые вопросы

В: Что вызывает ошибку 502 Bad Gateway?

О: Когда вы получаете недопустимый ответ в своем браузере при попытке посетить ваш сайт, возникает ошибка 502 Bad Gateway.

В: Как исправить ошибку Google 502?

О: Вы можете исправить ошибку 502 Bad Gateway, выполнив следующие действия:

  • Проверить хостинг-сервер
  • Перезагрузить веб-страницу
  • Очистить кеш браузера
  • Проверить проблемы с DNS
  • Очистить кеш DNS
  • Отключить CDN/брандмауэр
  • Аудит Темы/Плагины
  • Проверить журналы ошибок
  • Установить время ожидания PHP
  • Проверьте пользовательские сценарии

В: Является ли 502 Bad Gateway вирусом?

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

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

Ошибка 502 Bad Gateway: что значит

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

Ошибка 502 Bad Gateway возникает при неправильной работе прокси-сервера, DNS-сервера и чаще всего сервера, на котором размещён сайт. Проблема может распространяться как на весь ресурс, так и на отдельные страницы. Это зависит от характера проблемы. Существуют разновидности 502 ошибки: Bad Gateway Nginx, Bad Gateway Apache. Об их отличиях мы расскажем ниже. Также эта ошибка может иметь формулировки:

  • Bad Gateway: Registered endpoint failed to handle the request, Temporary Error (502),
  • Error 502,
  • Bad 502 Gateway,
  • 502 Error,
  • 502. That’s an error,
  • 502 Service Temporarily Overloaded,
  • 502 Server Error: The server encountered a temporary error and could not complete your request,
  • 502 – Web server received an invalid response while acting as a gateway or proxy server,
  • 502 Bad Gateway Nginx,
  • 502 Proxy Error,
  • HTTP 502,
  • HTTP Error 502 Bad Gateway.


Что значит плохой шлюз: ошибка 502

Причины возникновения ошибки 502 Bad Gateway

  1. Первая и основная причина ― перегрузка сервера. Перегрузка может быть вызвана несколькими проблемами:

  2. Большое количество посетителей одновременно. Веб-ресурс может посещать ограниченное количество посетителей. Сколько человек может посетить сайт зависит от возможностей сервера (размера оперативной памяти) и настроек, которые сделал создатель ресурса. Если по какой-либо причине на сайт зайдёт больше пользователей, чем запланировано, сервис может не справиться и страница выдаст код 502. Такое случается при рекламных акциях и распродажах в интернет-магазинах.
  3. Атака хакеров или DDoS-атака. Эта проблема связана с предыдущей причиной перегрузки. Хакер имитирует большой наплыв пользователей, из-за чего сервер выходит из строя. Такие атаки могут быть использованы для снижения продаж.
  4. Плохая оптимизация сайта. Настройки ресурса сделаны так, что маленькое количество посетителей генерирует много запросов. В этом случае нужно оптимизировать работу сервера с пользовательскими запросами.
  5. Второй причиной возникновения кода 502 могут явиться ошибки РНР. Если для расширения функционала сайта в панель управления были добавлены некорректно настроенные плагины, они могут выдавать проблемы в своей работе. Вместе с ними ошибку покажет и сайт целиком. Также если код сайта написан неправильно, запросы могут давать отрицательный результат.
  6. Ошибка браузера. Проблема может быть на стороне пользователя, если у него установлены расширения, которые нарушают соединение с сервером сайта.

Чем отличается ошибка 502 Bad Gateway Nginx

Между браузером и сервером может стоять веб-сервер. Он используется для снижения нагрузки на сервер, аутентификации пользователей и многого другого. Самые популярные программы для создания веб-сервера ― Nginx и Apache. Так как веб-сервер является посредником между браузером и сервером, то именно он будет оповещать пользователя о проблеме. Поэтому в зависимости от веб-сервера в сообщении вы можете увидеть надпись Bad Gateway Nginx или Bad Gateway Apache. При этом причины возникновения проблемы одинаковы.

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

Что делать, если вы пользователь

  1. Перезагрузите страницу, если проблема была вызвана наплывом посетителей. Возможно, через некоторое время посетители уйдут со страницы и вы сможете увидеть контент.
  2. Попробуйте зайти на другой веб-ресурс. Если вы можете зайти на другой сайт, значит проблема на стороне владельца ресурса и вы ничего не можете сделать. Вернитесь на страницу позже, когда администратор восстановит доступ.
  3. Проверьте подключение к интернету. Из-за низкой скорости или нестабильности соединения браузер может не получать данные с сервера.
  4. Запустите браузер в режиме «Инкогнито». В режиме «Инкогнито» браузер работает с базовыми настройками. Если вам удалось зайти на веб-ресурс в этом режиме, значит одно из ваших расширений браузера мешает соединению. Это расширение нужно отключить.
  5. Почистите файлы cookies. Если при повторном входе на сайт всё равно отображается ошибка 502, очистите кэш браузера. Возможно, доступ уже восстановлен, но ваш браузер обращается к старой версии страницы из кэша.
  6. Очистите кэш DNS. DNS-кэш — это временная база данных вашего компьютера, которая хранит записи обо всех последних посещениях и попытках посещений веб-сайтов и их IP-адресах. Кэш позволяет ускорить вход на часто посещаемые веб-ресурсы. Если у сайта изменились DNS, а данные из кэша отправляют на старый IP-адрес, в браузере появится код 502. После очистки браузер начнёт обращаться к новому IP-адресу.


Как очистить кэш DNS

В зависимости от вашей операционной системы очистите кэш по одной из инструкций.

  1. Откройте командную строку. Для этого введите в поисковую строку «Командная строка» и выберите появившееся приложение:
  1. Введите команду:

ipconfig /flushdns

  1. Дождитесь сообщения об очистке кэша:
  1. Откройте терминал клавишами Ctrl+Alt+T.
  2. Введите команду:

Для Ubuntu:

sudo service network-manager restart

Для других дистрибутивов:

sudo /etc/init.d/nscd restart

  1. Войдите в терминал. Для этого нажмите клавиши Command + Space. Введите Терминал и нажмите на найденное приложение.
  2. Введите команду:

sudo killall -HUP mDNSResponder

Готово, вы очистили кеш DNS. Попробуйте заново зайти на сайт.

Что делать, если вы владелец сайта

Проверьте количество свободной памяти. Это можно сделать двумя способами.

Способ 1 ― введите команду top в командной строке сервера:

Mem ― вся оперативная память.

Swap ― раздел подкачки.

Посмотрите на строку Memfree. Это количество свободного места на сервере. Если там указано маленькое число, ошибка 502 Bad Gateway появляется из-за нехватки памяти. Увеличьте количество оперативной памяти и проблема пропадёт. Также в результатах можно будет увидеть, какую нагрузку на сервер даёт каждый отдельный процесс.

Способ 2 ― введите команду free -m.

Mem ― вся оперативная память.

Swap ― раздел подкачки.

В строке Memfree показано свободное место на сервере. Если там маленькое число, увеличьте количество оперативной памяти.

Проверьте логи сервера. Если проблема возникла в момент каких-либо обновлений на сайте, проверьте журнал изменений, чтобы отменить те доработки, которые нарушили функциональность сервера. Также в логах можно увидеть DDos-атаку. Если дело в нехватке памяти, в логах отобразится ошибка OOM (out of memory).

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

  1. 1.

    Войдите в панель управления WordPress. Если вы пользуетесь услугой REG.Site, войти в панель управления CMS можно прямо из Личного кабинета.

  2. 2.

    Перейдите во вкладку «Плагины» ― «Установленные».

  3. 3.

    Нажмите Деактивировать у плагина, который, как вам кажется, повлиял на работу сайта:

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

Проверьте, как работают вспомогательные службы, например MySQL и Memcached. Иногда они могут стать причиной 502 ошибки.

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


Сайт находится на виртуальном хостинге REG.RU

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

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


Сайт находится на VPS REG.RU

Чаще всего на VPS используется связка: Nginx + бэкенд-сервер (Apache, PHP-FPM, Gunicorn, NodeJS). Ошибка 502 возникает в случае, если Nginx не может получить ответ от этих сервисов.
Клиенты с VPS сталкиваются с «502 Bad Gateway», когда:

  • какой-то из сервисов выключен. Перезапустите веб-сервер Apache, PHP-FPM либо другой сервис, с которым работает Nginx;
  • между Nginx и бэкенд-сервером некорректно настроена связь. Например, Nginx производит обращение к порту 8080, а веб-сервер Apache «слушает» на 8081. В этом случае необходимо скорректировать настройки веб-сервера.

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

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

Ошибка 502 — что значит и как исправить? Об этом расскажем в статье.

  • Ошибка 502 Bad Gateway: что значит
  • Ошибка 502 при открытии сайта: причины возникновения
  • Как владельцу сайта исправить ошибку 502
    • Способ 1
    • Способ 2
  • Как исправить ошибку 502: советы для пользователей
  • Как очистить кеш DNS

Ошибка 502 Bad Gateway: что значит

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

Ошибка шлюза 502 может возникнуть при неправильной работе:

  • сервера, на котором размещен сайт,
  • DNS-сервера,
  • прокси-сервера.

Проблема может наблюдаться как на всем сайте, так и на отдельных страницах. Это зависит от причины возникновения ошибки. У ошибки 502 есть разновидности: Bad Gateway Nginx и Bad Gateway Apache. Также эта ошибка может называться:

  • Error 502,
  • Bad 502 Gateway,
  • 502 Error,
  • Bad Gateway: Registered endpoint failed to handle the request, Temporary Error (502),
  • 502 Proxy Error,
  • HTTP 502,
  • 502. That’s an error,
  • 502 Service Temporarily Overloaded,
  • 502 Server Error: The server encountered a temporary error and could not complete your request,
  • 502 – Web server received an invalid response while acting as a gateway or proxy server,
  • HTTP Error 502 Bad Gateway.

Ошибка 502 при открытии сайта: причины возникновения

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

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

Также причиной возникновения 502 Gateway Error могут быть ошибки PHP. Проблемы в работе могут вызывать некорректно настроенные плагины и ошибки в коде сайта.

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

Как владельцу сайта исправить ошибку 502

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

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

Способ 1:

  1. Подключитесь к серверу по SSH.
  2. В терминале введите команду top:

MiB Mem ― вся оперативная память.
MiB Swap ― раздел подкачки.

Найдите строку MiB Mem — free. Это количество свободной оперативной памяти на сервере. Если ее мало, ошибка возникает из-за нехватки памяти. Чтобы решить проблему, увеличьте количество оперативной памяти.

Способ 2:

  1. Подключитесь к серверу по SSH.
  2. В терминале введите команду free -m:

Mem ― вся оперативная память.
Swap ― раздел подкачки.

Найдите строку Mem — free. В ней указано количество свободной оперативной памяти на сервере. Если ее мало, ошибка возникает из-за нехватки памяти. Чтобы решить проблему, увеличьте количество оперативной памяти.

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

Проверьте логи сервера. Если проблема возникла после обновлений на сайте, посмотрите журнал изменений и отмените доработки, которые вызвали сбои на сервере. Помимо этого, в логах можно увидеть DDoS-атаку. Если вы увидели ошибку «OOM (out of memory)», то причина в нехватке памяти.

Проверьте корректность работы вспомогательных служб, таких как MySQL и Memcached. Их неправильная работа может стать причиной 502 ошибки. 

Если ваш сайт сделан на WordPress, попробуйте отключить плагины. Они могут влиять на работу сервера. Чтобы отключить плагин:

  1. Войдите в административную панель по адресу домен/wp-admin.php.
  2. Перейдите в раздел «Плагины» ― «Установленные».
  3. Нажмите «Деактивировать»:

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

На VPS и выделенных серверах проблема может возникнуть из-за некорректной работы бэкенд-сервера (например, Apache). Если Nginx не может получить ответ от этого сервиса, возникнет 502 ошибка. Владельцы сайта сталкиваются с ошибкой, когда:

  • какой-то сервис выключен. Перезапустите веб-сервер Apache, PHP-FPM, Gunicorn, NodeJS или другой сервис, с которым работает Nginx;
  • связь между Nginx и бэкенд-сервером настроена неправильно. Например, Nginx обращается к порту 8080, а веб-сервер Apache «слушает» другой порт. В таком случае нужно изменить настройки веб-сервера.

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

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

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

  1. Обновите страницу. Если ошибка возникла из-за большого наплыва посетителей, вероятно, что спустя время пользователи уйдут, нагрузка спадет и сайт откроется.
  2. Попробуйте открыть другой сайт. Если на других ресурсах ошибка не возникает, значит проблема на стороне владельца сайта. В таком случае вы ничего не можете сделать. Нужно ожидать, когда владелец веб-ресурса устранит проблему.
  3. Проверьте интернет-соединение. Из-за нестабильного подключения к сети и низкой скорости интернета браузер может не получить данные с сервера.
  4. Откройте браузер в режиме «Инкогнито». В «Инкогнито» браузер работает без расширений. Если в этом режиме сайт открылся без ошибки, то какое-то из установленных расширений мешает соединению. Это расширение нужно отключить.
  5. Очистите кеш и куки. Возможно, проблема уже устранена и сайт работает корректно, но браузер открывает старую версию страницы из кеша.
  6. Очистите кеш DNS. DNS-кеш хранит IP-адреса ранее посещенных сайтов локально на устройстве, чтобы ускорить связь с сервером и открывать веб-страницы быстрее. Если у сайта изменились DNS и кеш отправляет вас по старому IP-адресу, возникнет ошибка 502. Для исправления ошибки нужно очистить кеш DNS.

Как очистить кеш DNS

Способ чистки DNS-кеша зависит от вашей операционной системы. Ниже мы описали, как очистить DNS-кеш на Windows, Linux и MacOS.

Windows

  1. Откройте командную строку. Для этого нажмите Win+R, введите «cmd» и нажмите OK:

  1. Введите команду: ipconfig /flushdns
  2. Дождитесь оповещения об успешной очистке кеша:

Linux

  1. Откройте терминал при помощи сочетания клавиш Ctrl+Alt+T.
  2. Введите команду:
  • Для Ubuntu:

sudo service network-manager restart

  • Для других дистрибутивов:

sudo /etc/init.d/nscd restart
 

MacOS

  1. Откройте терминал. Для этого нажмите Command+Space, введите «Терминал» и кликните по найденному приложению.
  2. Введите команду:

sudo killall -HUP mDNSResponder

Понравилась статья? Поделить с друзьями:
  • Ошибка 502 зум
  • Ошибка 5010 canon mp520
  • Ошибка 502 гугл
  • Ошибка 501 эксель
  • Ошибка 502 геткурс