nginx se connecte à php-fpm sur fastcgi, en utilisant la norme /etc/nginx/fastcgi_params
dans le bloc d'emplacement.
Lors de la connexion à /.status (php-fpm.ini :: ping.path) à partir de la ligne de commande avec cgi-fcgi -bind
, le résultat revient comme prévu (ensemble X-Powered-By, corps de réponse, etc.).
Lors d'une demande avec nginx, le résultat revient vide (ensemble X-Powered-By, pas de longueur ni de contenu). nginx renvoie 200, car il a obtenu une réponse "valide".
En surveillant tcpdump, j'ai isolé les demandes de parité dans leurs en-têtes FCGI (moins les variables env liées à l'utilisateur toujours définies par le shell).
Réponses:
Le
factcgi_params
fichier standard ne contient pas la ligne clé pourSCRIPT_FILENAME
.Ajoutez-le et redémarrez nginx.
la source
Eh bien, votre question est un peu vague. Un soi-disant «écran blanc de la mort» (WSOD) pourrait être déclenché par une quantité infinie de choses. Mais certaines choses que je fais si je rencontre ceci:
Activez les éléments suivants dans votre
php.ini
:Activez dans votre
php-fpm.conf
:Activez pour chaque configuration de pool php-fpm:
Si rien de tout cela ne vous aide à identifier le problème, veuillez publier les informations et configurations complètes de votre système. Personne ne peut vous donner une réponse précise sans cela.
la source