nginx Porblem auf lokalem Rechner

Hallo


Ich habe es blödes Problem mit einer frischen nginx, php7 Installtion auf debian-Sid (die Sid-Installtion ist alt).

nginx und php7.0-fpm sind per systemctl enabled und gestartet. http://localhost zeigt auch korrekt die inde-nginx-debian.html i documentroot (/var/www/html) an, nur wenn ich http://localhost/info.php eingeben (die datei existiert natürlich und hat sogar 777 Rechte) kommt Fehelr 502 bad gateway !

Ich verzweifel da fast dran, denn dieselben Einstellungen, dateien (index,info) und Rechte hab eich auf einer frischen Sid Installti9on in einer VM und dort klappt localhost/info.php und sagt mir php-7.xy läuft.


Die nginx default sind auch identisch. ich hab eda wohl irgendwo ein brett vor dem Kopf.

Kann mir einer mal einen Stups geben:rolleyes:

mfg
schwedenmann

P.S.
das ganze soll nur einer kleinen lokalen Umgebung dienen, u mal 1 oder 2 CMS zu installieren und zu testen.
 
Bad Gateway in einer PHP-FPM-Installation bedeutet zumeist, dass der FPM-Socket nicht erreichbar ist. Das kann an fehlenden Rechten der Socket-Datei liegen, an einer falschen IP, falls FPM via TCP angesprochen wird oder schlicht an einem falschen Socket-Pfad.

Daher:
1. Stelle sicher, dass in der FPM-Konfiguration für user und group die gleichen Nutzer gesetzt sind wie für den Webserver (üblicherweise 'www-data').
2. Überprüfen den Wert für 'listen' in deiner FPM-Konfiguration und setze dann fastcgi_pass auf einen passenden Wert. Beispiel: Ist 'listen' auf '/var/run/php7-fpm.sock' gesetzt, ist der richtige Wert für 'fastcgi_pass' etwas wie 'unix:/var/run/php7-fpm.sock'.
 
nginx und 502 Bad Gateway

Hallo

In der /etc/nginx/nginx.conf steht user = www-data
In der /etc/nginx/sites-available/default steht
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

in der php/7.0/fpm/pool.d/www.conf
user + group www-data, listen.user ww.data listen.group www-data

cgi.fix_pathinfo=0 steht in der php.ini wie es sein soll.

nginx läuft
php7.0-fpm läuft
apache läuft nicht
php5-fpm läuft auch nicht
per systemctl -all kontrolliert

trotzdem wird weiter der Fehler 502 Bad gateway ausgegeben

mfg
schwedenmann
 
Code:
fastcgi_pass unix:/var/run/php/php7.0-fpm.sock;

vs.

Code:
listen = /run/php/php7.0-fpm.sock

Fazit: Der Pfad ist nicht identisch. Das funktioniert nur, wenn /run ein Link auf /var/run ist.
 
Dann solltest du evtl. mal das LogLevel hochdrehen und schauen woran das Bad-Gateway hängt. Üblicherweise wird sowas in den Logs vermerkt.
 
Hallo,

so wie die Logs aussehen funktioniert die Verbindung mit dem PHP-Interpreter.
2017/01/15 17:06:37 [debug] 10770#10770: *1 connect to unix:/run/php/php7.0-fpm.sock, fd:16 #2
2017/01/15 17:06:37 [debug] 10770#10770: *1 connected

Ist der Paramter fastcgi_intercept_errors aus oder an, wenn an, bitte mal ausschalten.
Wenn du normalerweise einen 502-Fehler bekommst, deutet das darauf hin das, was auch immer mit NginX verbunden ist, nicht richtig funktioniert.
(Bsp. Reverse-Proxy und die Applikation dahinter ist nicht angeschaltet).
Von daher habe ich die Vermutung das der PHP-Prozess die Interpretation abbricht.
Kannst du mal die info.php angeben?
Gruß

Fluffy
 
Entferne mal das Closingtag ( ?> ).
Ist nicht mehr zeitgemäß und kann unter PHP zu Fehlern führen wenn dahinter noch ein Leerzeichen/-zeile ist, aber ist unauffällig.


fastcgi_intercept_errors ist ein nginx-parameter, der nginx anweist alle statuscodes über 300 zu interpretieren.
Glaube zwar nicht das das viel ausrichtet, aber nachschauen schadet nicht.

Gruß

Fluffy
 
nginx

Hallo



Fastcgi_intercept_errors

habe ich weder in nginx.conf noch in default von nginx.
?> habe ich ebntfernt, immer noch 502 Bad Gateway


mfg
schwedenmann

P.S.
Ich werde wohl nginx, php php-fpm nginx per apt-get remove --purge komplett entfernen, incl. der configs, was noch in /etc übrigbleibt werde ich manuell löschen, ist zwar winstyle :D diese Methode, aber da IT mein privates Steckenpferd ist, von vielen anderen, will ich da nicht mehr Zeit investieren als nötig, hat mich jetzt schon das WE gekostet und das am letzten Urlaubstag:rolleyes:
P.P.SKann man eigentlich später die Verzeichnisse php, nginx, php5 in /etc löschen, oder muß ich die stehen lassen, auch wenn sie leer sind?
 
Kannst du löschen.
Wenn die Verzeichnisse bei einer Installation nicht vorhanden sind werden sie automatisch angelegt, oder aber beim 1. Applikationsstart(Bsp.:LogDateien).
Problematisch wird es nur wenn du die Dateien/Verzeichnisse löscht obwohl sie noch benötigt werden.
Da hängt es dann von dem Verhalten des Programms ab, und ob es i.w. im System noch eine Default-Config gibt.
Gruß

Fluffy
 
Zurück
Oben