Всем доброго времени суток! Сегодня мы разбираем очередную ошибку, которая вылезает при открытии сайта – 502 (Bad Gateway). Для начала давайте разберемся – что это значит и откуда она взялась?
Ошибка 502: Bad Gateway (перевод с английского на русский – «Плохой шлюз») – возникает, когда браузер получает неправильный или некорректный ответ от сервера. Пользователь пытается зайти на сайт. Браузер отправляет запрос на сервер данного сайта. Сервер должен передать определенные данные пользователю, если же он их не отдает, то мы можем наблюдать эту ошибку.
В таком случае виновником может быть:
- Хостинг-сервера – сервер мог зависнуть, заглючить или вообще лечь. Чаще всего он в этот момент просто перезагружается и нужно немного подождать. Есть вероятность, что на хостинге ведутся техническое работы.
- Прокси или VPN – если вы используете в качестве подключения посредника, то проблемы могут быть на его стороне.
- DNS-сервер.
- Проблема с настройками (CMS) движка сайта. Например, кривые плагины.
- Если в сообщении вы видите надписи «Bad Gateway Nginx» или «Bad Gateway Apache», то проблема не в конечном сервере, а в Web-сервере, который стоит между основным сервером и пользователем. Он обычно снижает нагрузку на конечный сервер за счет самостоятельной обработки большого количества однотипных запросов.
В 99% случаев виноват именно сервер, на который идет запрос от пользователя. При чем ошибка может быть, как на отдельной странице сайта, так и распространятся на весь ресурс.
Далее статью я разбил на две части. В первой части я рассказываю рекомендации, которые могут помочь обычному пользователю. Во второй части будут написаны советы для администратора сайта. Выбрать нужную главу можно в оглавлении ниже. В любом случае вы всегда можете обратиться со своей проблемой в комментариях, и я постараюсь вам помочь.
Я пользователь
В первую очередь попробуйте просто подождать, скорее всего сервер повис и перезагружается. Попробуйте зайти на другой сайт. Если у вас это получилось, значит 100% проблема на стороне сервера, где хранится этот сайт. Тут вы ничего сделать не сможете, придется ждать.
Поэтому сходите, попейте чай и минуты через 2-3 попробуйте перезагрузить страницу. В этот момент можно выполнить перезагрузку вашего компьютера, может быть проблема в нем. Также я бы на всякий случай перезапустил роутер или модем. Для этого достаточно выключить и включить его снова с помощью кнопки «Power» или «On/Off».
Если такой кнопки нет, то просто выдерните его из розетки и включите повторно. Можно даже немного подождать, чтобы сетевой аппарат смог остыть. Проверьте скорость интернета, а также средства на балансе вашего счета у провайдера. Некоторые провайдеры специально снижают скорость интернета, при нулевом балансе.
В очень редких случаях помогает очистка кэша и cookie-файлов в вашем браузере. Для этого зажимаем клавиши Ctrl, Shift, и, не отпуская их, жмем по клавише Delete.
Вылезет окошко очистки истории. Выделяем пункты:
- История браузера.
- История скачиваний.
- Файлы cookie и другие данные сайтов.
- Изображения и другие файлы, сохраненные в кеше.
Смотрите, чтобы стоял «Временный диапазон» – «Все время». Жмем «Удалить данные». После этого закрываем и открываем браузер.
Можно попробовать сбросить кэш DNS и IP адреса. Для этого открываем командную строку или PowerShell с правами администратора. Проще всего это сделать через строку поиска.
Давайте сначала выполним сброс протокола и настроек IP:
netsh int ip reset
Теперь сбрасываем кэш DNS:
ipconfig /flushdns
После этого перезагружаем компьютер. Если вы все же используете какие-то прокси или VPN, то полностью их отключите. Также это касается различных расширений. Чтобы это проверить, попробуйте открыть страничку в инкогнито (Ctrl + Shift + Т) и зайти на этот сайт. Обычно в данном режиме браузер работает со стандартными настройками без расширений. Если это поможет, то попробуйте их полностью отключить.
Если это не помогает, можно еще попробовать запустить нужный сайт с другого браузера. Если другой браузер работает, то полностью удалите этот браузер, скачайте свежую версию с интернета и установите её повторно. Очень часто они ломаются, особенно это касается браузеров на Chrome-ядре.
Попробуем еще поменять адреса DNS-серверов:
- Через сочетание клавиш + R вызываем окно «Выполнить» и вводим команду:
ncpa.cpl
- Вы должны увидеть несколько подключений. Если вы подключены к интернету по проводу, то выбираем «Ethernet», если беспроводным путем, то выбираем «Wi-Fi». Кликаем по этому подключению правой кнопкой мыши и заходим в «Свойства».
- Заходим в свойства IPv4 и устанавливаем DNS вручную. Пробуем ДНС от Google: 8.8.8.8 и 8.8.4.4. Или от Яндекс: 77.88.8.8 и 77.88.8.1.
- В конце жмем «ОК».
Если ничего не помогает, то вот пара рекомендаций, которые могут помочь:
- Попробуйте убрать все лишнее из автозагрузки. Можно даже попробовать убрать все кроме антивирусника. Об этом подробно написано тут.
- Вспомните, не устанавливали ли ранее какую-то программу, которая может в теории мешать подключению. Можно попробовать её удалить.
- Есть вероятность, что сайт заблокирован на территории вашей страны.
- Если проблема наблюдается при входе на все сайты, то можно попробовать обратиться в техническую поддержку вашего провайдера.
- Можно попробовать удалить и установить драйвера на вашу сетевую карту или Wi-Fi адаптер. Об этом подробно написано тут.
Помните, что вы всегда можете обратиться со своими вопросами в комментариях. Только старайтесь писать как можно подробнее, чтобы я смог понять вашу ситуацию.
Я администратор сайта
Как я уже и говорил в самом начале, если сервер-хостинга не отвечает, то нужно немного подождать. Скорее всего он просто повис и в данный момент перезагружается. От чего может вообще лечь сервер:
- Большое количество посетителей или наплыв ботов. Каждый сервер имеет определенный предел максимального количество пользователей. Опять же, об этом можно узнать на сайте хостинга. Почти на всех подобных ресурсах есть показатели максимальной нагрузки. Если данный показатель превышен, то стоит взять в аренду более мощные сервера.
- DDoS атака – чем-то напоминает прошлую проблему. Только в этом случае резкий наплыв трафика связан с хакерской атакой.
- Оверселлинг. Лучше рассказать на примере. Представим себе, что Иван берет в аренду сервер с определенным количеством ресурсов, которые могут обработать какое-то количество клиентов. Иван постарался взять в аренду сервер с запасом. И как итог в начале своего пути его сайт нагружает сервер на 20-30%. Остальные же 70% простаивают и не используются. Недобросовестный хостинг берет и начинает использовать эти 70% для других ресурсов. И вот когда сайт Ивана начинает расти и пользователей становится больше, то серверу нужно потреблять больше ресурсов, которых просто не хватает. Это и называется «Оверселлингом». Узнать об этом самостоятельно невозможно, но если сайт постоянно отваливается, виснет, то стоит задуматься о смене хостинга.
- Плохая оптимизация сайта. Администратор обязан оптимизировать сайт таким образом, чтобы было как можно меньше запросов на сервер при посещении хотя бы одной страницы. Если сайт оптимизирован плохо, то при резком скачке посетителей сервер может не справится с большим количеством запросов.
Давайте посмотрим, что же мы можем сделать. В первую очередь зайдите на сервер и пропишите команду:
$top
Нас интересует оперативная память (Mem) и файл подкачки (Swap). Total – это полный объем, который есть. А вот free – это количество свободной памяти. Если Free памяти очень мало, то может вылезать ошибка: 502 Bad Gateway. Стоит подумать об увеличении ОЗУ.
Если же ОЗУ достаточно, то есть вероятность, что на php-cgi процессы установлены лимиты в конфигурационном Apache файле – httpd.conf. Открываем его, находим модуль mod_fascgi или mod_fastcgid и увеличиваем лимит php-cgi.
Зайдите и посмотрите логи-сервера. Например, если были проблема с оперативной памятью, то можно увидеть ошибку:
OOM (out of memory)
Можно просмотреть все ошибки за данный период. Если до этого на сайте были произведены какие-то серьёзные обновление, то стоит подумать об откате.
Вспомните, не устанавливали ли вы до этого какой-то сторонний плагин. Некоторые плагины могут нарушить работу сайта и выводить подобные ошибки. Некоторые плагины могли быть обновлены до нестабильной версии.
Из последнего, что я могу посоветовать, так это проверить работу службы MySQL и Memcached. Если с ними все в порядке, то стоит обратиться в техническую поддержку вашего хостинга. Самое главное четко и точно описать свою проблему, а также все действия, которые вы уже предприняли. Вы также можете обратиться со своим вопросом ко мне в комментариях и постараюсь вам помочь.
Уже все попыталась сделать. Но моя любимая игра так и не открывается. Что делать?
просто ждите. это проблема не у вас. сама так целый день не знала что делать.
Ошибка 502 – серверная. Клиент вообще ничего не может сделать с ней.