Image
Um 502 pode apontar para conexão recusada, socket ou processo FPM indisponível; um 504 costuma indicar timeout, mas também pode envolver pool saturado, consulta ou serviço externo. O status sozinho não identifica a causa.
Correlacione horário, URL, duração e identificador de requisição nos logs Nginx, PHP-FPM, PHP e banco. Meça fila de workers, memória e tempos antes de alterar timeout. Reiniciar sem capturar evidência pode apagar o contexto do incidente.
Leia o guia da Mindcore para investigar 502 e 504 em Drupal atrás de Nginx.