Comment puis-je éviter une erreur de passerelle 502 lors du redémarrage de php-fpm?

Lors du redémarrage du service php-fpm sur mon système Linux, le processus PHP CGI met un certain temps à s’éteindre complètement. En attendant, le lancement d’une nouvelle instance PHP CGI échoue car le processus de terminaison contient toujours le port 9000. L’access au site pendant cette période entraîne une erreur de passerelle 502, que je voudrais éviter.

Comment redémarrer php-fpm en douceur sans avoir cette erreur?

Exécutez deux instances de php-fpm, décrivez-le dans une section en amont .

  fast_cgi en amont {
         serveur localhost: 9000;
         serveur localhost: sauvegarde 9001;
     }

Changez nginx.conf, pour utiliser fastcgi_pass fast_cgi; . Après cela, si vous redémarrez une instance, nginx traitera la requête via la seconde instance php-fpm.