Практическое задание

Эта задача — шаг 23 курса «Диагностика и восстановление Linux-сервера»

Склад отвечает 502

сложно~10 мин

Сервис складского учёта открывают через nginx: http://localhost/api/stock — и получают 502 Bad Gateway. Сам nginx работает, конфиг валиден. Найди, куда проксируются запросы и почему там никто не отвечает, и почини так, чтобы через прокси снова приходил ответ самого складского приложения (его код лежит в /opt/inventory).

Вкладка «Сайт» показывает то, что nginx отдаёт на порту 80: сейчас там страница 502. После починки нажми «Обновить» — должен появиться JSON склада.

Что потренируешь:
  • nginx
  • 502 bad gateway
  • proxy_pass
  • ss
  • фоновый процесс

Разбор темы

502 Bad Gateway означает, что nginx принял запрос, но не получил ответа от апстрима — того адреса, что указан в proxy_pass. Диагностика идёт по цепочке: в конфиге находишь адрес и порт бэкенда, через ss -ltn проверяешь, слушает ли его кто-нибудь, и если нет — ищешь, что именно должно там работать. Подменять бэкенд первым попавшимся HTTP-сервером нельзя: 502 исчезнет, но пользователи получат не те данные. Нужное приложение запускают в фоне, отвязав от терминала (setsid, nohup), чтобы оно не умерло вместе с сессией.

Что проверяется

  1. прокси отдаёт 200
  2. отвечает складское приложение

Как это выглядит