Moodle 502/504: Nginx і PHP-FPM

29.04.2026

Повідомлення 502 Bad Gateway або 504 Gateway Timeout у Moodle майже ніколи не є «помилкою самої LMS». Це сигнал, що Nginx (або Apache) не отримав відповідь від upstream — найчастіше від PHP-FPM — у відведений час.

Що означають коди

  • 502 — upstream недоступний, впав або повернув некоректну відповідь.
  • 504 — запит виконувався надто довго (важкий звіт, тест, імпорт, блокування БД).

Швидкий чек-лист

  1. Журнали Nginx/Apache і PHP-FPM за час інциденту.
  2. Чи живий пул PHP-FPM, чи всі воркери зайняті.
  3. Чи не впирається диск (I/O wait) або база даних.
  4. Чи не збігся важкий cron із піковим входом студентів.
  5. Чи не вичерпано ліміти `pm.max_children` / таймаути `fastcgi_read_timeout`.

Що не варто робити

Сліпо збільшувати таймаути «до нескінченності» без пошуку причини. Це лише маскує деградацію: користувачі довше чекають, а черга запитів росте.

Для стабільної роботи після інциденту зазвичай потрібні і налаштування стека, і регламент супроводу. Дивіться технічний супровід Moodle та за потреби серверний супровід.

© BI-Systems. Передрук і поширення матеріалу дозволено за умови збереження авторства та активного посилання на оригінальну публікацію.

Поділитися

Залишити заявку TG