Solution 1 :
Avez-vous vérifié votre error_log fichier pour php-fpm ? L'emplacement de ce fichier doit être déclaré dans votre php-fpm.conf (dans la configuration Ubuntu est /etc/php5/fpm/php-fpm.conf, le fichier journal est /var/log/php5-fpm/log), vérifiez également votre log_level , si est désactivé (;log_level), veuillez l'activer et le changer en debug . Après cela, essayez de redémarrer le service php5-fpm et vérifiez vos journaux.
Vous pouvez également essayer d'exécuter php5-fpm en mode premier plan :
# php5-fpm -y /etc/php5/fpm/php-fpm.conf
Peut-être que cela vous montrera quelque chose d'intéressant.
Solution 2 :
Procédure de dépannage standard :
- Vérifiez le fichier journal. Si vous ne savez pas où il se trouve, vérifiez la configuration ou pour déterminer avec certitude, trouvez le pid avec
ps aux | grep php-fpm
, puis faiteslsof -p $PID | grep log
(omettez le grep s'il ne montre rien). - 99 % du temps, les fichiers journaux vous indiquent la cause. Si ce n'est pas le cas, recherchez un niveau de journalisation dans la configuration, augmentez-le et réessayez.
- Peut-être qu'il se ferme instantanément et que vous ne pouvez pas obtenir le PID pour inspecter le processus. Vous pouvez également essayer de démarrer le processus au premier plan, mais cela signifie déterminer quels commutateurs de ligne de commande vous devez utiliser. Habituellement, il vous suffit de le pointer vers votre configuration existante.
- Si ni le fichier journal ni stdout/stderr (sortie de premier plan) ne contiennent d'indices, il est temps pour strace... mais c'est un autre article.
Solution 3 :
Cette note m'a aidé :https://bugs.launchpad.net/nginx/+bug/1366651
Dans mon cas, la mise à jour vers nginx> 1.6.1 les paramètres passés à php5-fpm sont situés dans fastcgi.conf au lieu de fastcgi_params, ce qui donne un PHP qui renvoie toujours 200 (ok), mais jamais de contenu, car le SCRIPT_FILENAME n'était plus défini.
J'espère que cela aidera également quelqu'un d'autre.
Solution 4 :
Pour moi, le problème était mon php-fpm.conf
le fichier n'utilisait pas le nom de fichier de configuration par défaut - il était nommé /etc/php5/fpm/php5-fpm.conf
( php5-fpm.conf
contre 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
J'ai renommé le fichier conf en php-fpm.conf
et cela a résolu le problème.
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 ]