Как исправить ошибку «502 Bad Gateway»


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

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

  • Снижение скорости выполнения запросов в nginx.
  • Перегруженность сервера из-за нехватки ресурсов — оперативной памяти, места на диске.
  • Использование устаревших CMS и плагинов.
  • Плохой код сайта.
  • Ошибки конфигурации сети — проблемы с DNS, маршрутизация, блокировка файрволом, используемым на сервере, проблемы у провайдера.

Для избежания возникновения ошибки:

  • Оптимизируйте и исправляйте медленные MySQL-запросы;
  • Обновляйте CMS и плагины.
  • Избегайте проблем с маршрутизацией и отслеживайте перезагрузки и атаки на сервер.
  • Отключите скрипты мониторинга и отслеживания посетителей на сайте, потому что каждое действие посетителей выполняет запрос к базе данных.

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

В меню слева разверните блок Инструменты (1) и выберите phpMyAdmin (2)

Авторизуйтесь на платформе.

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

Изучите столбец EVENT_NAME. Если какая-то из таблиц не содержит ценной информации, а только логи, статистику или кэш, то очистите или удалите её.