Ошибка 502 или 504 в BitrixEnv: порядок диагностики
Как отличить проблему nginx, Apache/PHP, базы данных или ресурсов VPS и какие данные собрать до перезапуска.
Системные требования
Нужен SSH-доступ. Перед перезапуском служб зафиксируйте время ошибки и соберите журналы — иначе важные признаки причины могут исчезнуть.
Смотреть системные требования1. Зафиксируйте масштаб проблемы
Проверьте, ошибка возникает на всех страницах или только в одном сценарии. Запишите точное время, URL и HTTP-статус:
curl -I https://portal.example.ru502 обычно означает, что nginx не получил корректный ответ backend. 504 — backend не ответил за допустимое время. Для вывода о причине нужны журналы и состояние служб.
Используйте штатное окружение
BitrixEnv включает согласованную конфигурацию nginx, Apache, PHP и базы данных.
2. Проверьте ресурсы VPS
uptime
free -h
df -h
df -iИщите заполненный диск, отсутствие inode, нехватку памяти и необычно высокую нагрузку. Если диск заполнен, не удаляйте каталоги сайта наугад — сначала определите крупные журналы, временные файлы и архивы.
Совет
502 и 504 — это симптомы, а не причина. Бесконечный restart может временно скрыть нехватку памяти, переполненный диск, медленный запрос или падение backend.
3. Проверьте службы без перезапуска
systemctl --failed
systemctl status nginx
systemctl status httpd
systemctl status mysqldНазвание службы базы данных зависит от конфигурации. Статус active не исключает зависшие PHP-процессы или медленные запросы, но показывает, какой слой уже завершился с ошибкой.
4. Сопоставьте журналы по времени
tail -n 100 /var/log/nginx/error.log
tail -n 100 /var/log/httpd/error_log
journalctl -p err -b --no-pager | tail -n 100Ищите записи в минуту возникновения ошибки: отказ соединения, timeout, нехватку памяти, завершение процесса или ошибку PHP. Не публикуйте полный лог без очистки служебных данных.
5. Действуйте по найденной причине
- если заполнен диск — освободите место по согласованному регламенту и настройте ротацию;
- если не хватает памяти — найдите процесс и причину роста, затем оцените лимиты или ресурсы;
- если падает служба — изучите её журнал до запуска;
- если медленная только одна страница — используйте монитор производительности и профилирование запроса;
- если проблема появилась после обновления — остановите изменения и примените план отката.
Штатные операции BitrixEnv выполняйте через /root/menu.sh. В официальном курсе собраны актуальные версии и типовые ошибки окружения: BitrixVM/BitrixEnv.
Была ли эта статья полезной?
Спасибо за ваш отзыв!