Lösung 1:
Haben Sie Ihr error_log überprüft? Datei für php-fpm ? Der Speicherort dieser Datei sollte in Ihrer php-fpm.conf deklariert werden (in der Ubuntu-Konfiguration ist /etc/php5/fpm/php-fpm.conf, die Protokolldatei ist /var/log/php5-fpm/log), überprüfen Sie auch Ihr log_level , wenn es deaktiviert ist (;log_level), aktivieren Sie es bitte und ändern Sie es auf debug . Versuchen Sie danach, den php5-fpm-Dienst neu zu starten, und überprüfen Sie Ihre Protokolle.
Sie können auch versuchen, php5-fpm im Vordergrundmodus auszuführen:
# php5-fpm -y /etc/php5/fpm/php-fpm.conf
Vielleicht zeigt Ihnen das etwas Interessantes.
Lösung 2:
Standardverfahren zur Fehlerbehebung:
- Überprüfen Sie die Protokolldatei. Wenn Sie nicht wissen, wo es ist, überprüfen Sie die Konfiguration oder finden Sie die PID mit
ps aux | grep php-fpm
, um es sicher herauszufinden , dannlsof -p $PID | grep log
(lass das grep weg, wenn es nichts anzeigt). - In 99 % der Fälle zeigen Ihnen Protokolldateien die Ursache. Wenn nicht, suchen Sie in der Konfiguration nach einem Logging-Level, erhöhen Sie es und versuchen Sie es erneut.
- Vielleicht wird es sofort beendet und Sie können die PID nicht dazu bringen, den Prozess zu inspizieren. Sie können auch versuchen, den Prozess im Vordergrund zu starten, aber das bedeutet, herauszufinden, welche Befehlszeilenschalter Sie verwenden müssen. Normalerweise müssen Sie es nur auf Ihre vorhandene Konfiguration verweisen.
- Wenn weder die Protokolldatei noch stdout/stderr (Vordergrundausgabe) irgendwelche Hinweise enthalten, ist es Zeit für strace... aber das ist ein anderer Beitrag.
Lösung 3:
Dieser Hinweis hat mir geholfen:https://bugs.launchpad.net/nginx/+bug/1366651
In meinem Fall befinden sich beim Aktualisieren auf nginx> 1.6.1 die Parameter, die an php5-fpm übergeben werden, in fastcgi.conf statt in fastcgi_params, was zu einem PHP führt, das immer 200 (ok) zurückgibt, aber niemals Inhalt, weil die SCRIPT_FILENAME wurde nicht mehr gesetzt.
Ich hoffe, es hilft auch jemand anderem.
Lösung 4:
Bei mir war das Problem meine php-fpm.conf
Die Datei verwendete nicht den standardmäßigen Konfigurationsdateinamen - sie hieß /etc/php5/fpm/php5-fpm.conf
( php5-fpm.conf
gegenüber php-fpm.conf
)
php5-fpm -t
[26-Jul-2014 22:39:16] ERROR: failed to open configuration file '/etc/php5/fpm/php-fpm.conf': No such file or directory (2)
[26-Jul-2014 22:39:16] ERROR: failed to load configuration file '/etc/php5/fpm/php-fpm.conf'
[26-Jul-2014 22:39:16] ERROR: FPM initialization failed
Ich habe die conf-Datei in php-fpm.conf
umbenannt und das hat das Problem behoben.
sudo mv /etc/php5/fpm/php5-fpm.conf /etc/php5/fpm/php-fpm.conf
sudo service php5-fpm restart
* Restarting PHP5 FastCGI Process Manager php5-fpm [ OK ]