nginx łączy się z php-fpm przez fastcgi, używając standardu /etc/nginx/fastcgi_params
w bloku lokalizacji.
Po podłączeniu do /.status (php-fpm.ini :: ping.path) z wiersza poleceń za pomocą cgi-fcgi -bind
, wynik wraca zgodnie z oczekiwaniami (zestaw X-Powered-By, treść odpowiedzi itp.).
W przypadku żądania z nginx wynik jest pusty (zestaw X-Powered-By, brak długości ciała lub zawartości). nginx zwraca 200, ponieważ otrzymała „prawidłową” odpowiedź.
Obserwując tcpdump, wyodrębniłem żądania parzystości w ich nagłówkach FCGI (minus zmienne env związane z użytkownikiem nadal ustawione przez powłokę).
Odpowiedzi:
Standardowy
factcgi_params
plik nie zawiera wiersza klucza dlaSCRIPT_FILENAME
.Dodaj go i uruchom ponownie nginx.
źródło
Twoje pytanie jest trochę niejasne. Tak zwany „biały ekran śmierci” (WSOD) może zostać wywołany przez nieskończoną liczbę rzeczy. Ale niektóre rzeczy robię, jeśli napotykam to:
Aktywuj następujące elementy w swoim
php.ini
:Aktywuj w
php-fpm.conf
:Aktywuj dla każdej konfiguracji puli php-fpm:
Jeśli nic z tego nie pomoże w rozwiązaniu problemu, prześlij pełne informacje o systemie i konfiguracje. Bez tego nikt nie jest w stanie udzielić ci precyzyjnej odpowiedzi.
źródło