Erreur Nginx connect () a échoué

Je ne sais pas pourquoi j’ai eu cette erreur chaque fois que j’ai essayé d’ouvrir la page:

2013/04/06 17:52:19 [error] 5040#0: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 127.0.0.1, server: localhost, request: "GET /info.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "localhost:8080" 

Je l’ai résolu, c’était un problème de fichier de configuration, j’ai ajouté:

 location ~ .php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } 

Pour moi, le problème était que mon service php-fpm ne fonctionnait pas. Vous pouvez le vérifier en exécutant:

 service php-fpm status 

et lancez-le en courant

 service php-fpm start 

Parfois, php-fpm peut avoir des instances cassées en cours d’exécution, empêchant un redémarrage. Cette commande est un moyen propre de les effacer et de redémarrer php-fpm

 killall -9 php-fpm; service php-fpm restart 

mettez à jour vos configurations comme mentionné précédemment:

 location ~ .php$ { try_files $uri =404; fastcgi_split_path_info ^(.+\.php)(/.+)$; fastcgi_pass unix:/var/run/php5-fpm.sock; fastcgi_index index.php; include fastcgi_params; } 

mais n’oubliez pas de redémarrer nginx server et php-fpm après la mise à jour

 sudo /etc/init.d/nginx restart sudo /etc/init.d/php-fpm restart 

J’ai trouvé que j’avais le même problème avec PHP7 exécuté dans Docker sur une instance de Debian Jessie (8.3).

  • la commande en cours d’exécution ‘ps -aux’ montrait que php-fpm n’était pas en cours d’exécution
  • en cours d’exécution ‘php-fpm -D’ l’a présenté comme un processus désamorcé.
  • Réexécution de ‘ps -aux’ a montré que php-fpm était en cours d’exécution
  • Rafraîchir ma page de test m’a montré les informations PHP sur les serveurs.

Ajout de ‘php-fpm -D’ à mon script start.sh pour que les choses démarrent chaque fois que le conteneur est chargé.

J’espère que cela aide quelqu’un.

Utilisez fastcgi_pass unix: /var/run/php5-fpm.sock; seuls nginx et php installent le même serveur. Si nginx et php s’installent sur un autre serveur, vous devez utiliser fastcgi_pass ip server: port;