web-dev-qa-db-fra.com

Nginx connect () a échoué. Erreur

Je ne sais pas pourquoi j'ai cette erreur à chaque fois que j'essayais 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"
17
Hazem Hagrass

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;
}
40
Hazem Hagrass

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 commencez par courir

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
18
ContextSwitch

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 le serveur nginx et php-fpm après la mise à jour

Sudo /etc/init.d/nginx restart
Sudo /etc/init.d/php-fpm restart
3
user3111020

J'ai trouvé le même problème avec PHP7 qui s'exécutait dans Docker sur une instance de Debian Jessie (8.3). 

  • la commande en cours 'ps -aux' a montré que php-fpm ne fonctionnait pas
  • lancer 'php-fpm -D' l'a présenté comme processus désamonisé. 
  • La relecture de 'ps -aux' a montré que php-fpm fonctionnait bien
  • L'actualisation de ma page de test m'a montré les informations sur les serveurs PHP.

Ajout de 'php-fpm -D' à mon script start.sh pour que tout soit lancé à chaque chargement du conteneur.

J'espère que ça aide quelqu'un.

3
Lionel Morrison

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;

0
Scott Zụ