Nginx 502 Bad Gateway Errore

Attualmente sono presenti un errore 502 Bad Gateway sul mio Centos 6.8 Server.

2017/01/30 23:57:31 [crit] 26911#0: *1 connect() to unix:/var/run/php/php7.0-fpm.sock failed (2: No such file or directory) while connecting to upstream, client: 192.168.0.15, server: 192.168.0.$ 

Ho controllato se la directory esisteva e non lo è. Il più vicino ansible trovare alla cartella era / var / run / php-fpm, che contiene solo php-fpm.pid.

  • nginx + PHP-FPM = "l'authorization negata" 13 in log nginx; errore di configuration?
  • Quali utenti utilizza PHP / IIS6 per leggere e scrivere file?
  • Iptables non persistente dopo il riavvio su CentOS 6.2
  • Imansible avviare kdump
  • Come aggiungere direttive a php.ini su AWS Elastic Beanstalk?
  • Come configurare sendmail per utilizzare un diverso server SMTP?
  • Apache Non funziona mai dopo aver configurato eAccelerator e FastCGI
  • Installazione di più versioni php e estensioni su freebsd
  • Non può essere su utente diverso da root su CentOS
  • PAM incapace di dlopen (/lib64/security/pam_fprintd.so) causando il crash del server CentOS / Redhat
  • Risorse per l'avvio di amministratori Linux
  • Il webserver di accesso di accesso a distanza in modo remoto
  • 2 Solutions collect form web for “Nginx 502 Bad Gateway Errore”

    Ecco i passaggi per risolvere questo problema:

    1. Controllare se php-fpm è in esecuzione:

       sudo service php-fpm status sudo service php7-php-fpm status # use this if you are using remi PHP 7 
    2. Controllare la direttiva di listen nel file di configuration http://www.conf di php-fpm:

       grep -Ri listen /etc/php/7.0/fpm/pool.d/www.conf grep -Ri listen /etc/opt/remi/php70/php-fpm.d # for remi 
    3. Assicurati che la tua direttiva fastcgi_pass corrisponda alla tua direttiva di listen .

    Per me il process di installazione è questo, dopo aver installato nginx dal repo nginx.org :

     mkdir -p /var/www/public_html chown -R nginx:nginx /var/www/public_html restorecon -rv /var/www yum install php-fpm sed -i 's@listen = 127.0.0.1:9000@listen = /var/run/php-fpm/php-fpm.sock@' /etc/php-fpm.d/www.conf sed -i 's@;listen.owner = nobody@listen.owner = nobody@' /etc/php-fpm.d/www.conf sed -i 's@;listen.group = nobody@listen.group = nobody@' /etc/php-fpm.d/www.conf sed -i 's@user = apache@user = nginx@' /etc/php-fpm.d/www.conf sed -i 's@group = apache@group = nginx@' /etc/php-fpm.d/www.conf systemctl start php-fpm.service systemctl enable php-fpm.service 

    Quindi il tuo host config dovrebbe essere qualcosa di simile:

     server { listen 443 ssl; root /var/www/public_html; index index.php; location ~ \.php$ { try_files $uri =404; fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } 

    Poi riavviare nginx e lì si va.

    Suggerimenti per Linux e Windows Server, quali Ubuntu, Centos, Apache, Nginx, Debian e argomenti di rete.