tak ma wiele artykułów przywołujące ten kod błędu:debugowanie słynny - FastCGI wysłane stderr: „scenariusz podstawowy nieznany” podczas czytania nagłówka odpowiedzi od góry
FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream...
To prawdopodobnie oznacza, że ten komunikat o błędzie jest bardziej lub mniej bezużyteczny.
Wiadomość informuje nas, że program obsługi FastCGI nie lubi tego, co został wysłany z jakiegoś powodu. Problem polega na tym, że czasami nie mamy pojęcia, jaki jest tego powód.
Więc ja ponownie podając pytanie - w jaki sposób debugowania kodu ten błąd?
Weź pod uwagę sytuację, w której mamy bardzo prostą stronę z samym plikiem phpinfo.php. Dodatkowo, istnieje bardzo prosty nginx config, jak następuje:
server {
server_name testsite.local;
root /var/local/mysite/;
location/{
index index.html index.htm index.php;
}
location ~ \.php$ {
include /etc/nginx/fastcgi_params;
fastcgi_pass fastcgi_backend;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
Jak widzimy wyjście/log dokładnie co fastcgi_params został wysłany do skryptu?
Jak możemy zobaczyć rzeczywisty komunikat o błędzie? W moim przypadku używam php-fpm. Nie ma informacji w dzienniku o tym błędzie. Dzienniki nie dołączają żadnych wierszy dla tego błędu. Czy istnieje tryb szczegółowy dla php-fpm?
/var/log/php-fpm/error.log
/var/log/php-fpm/www-error.log
Próbowałem ustawić to w pliku php-fpm.conf
log_level = notice
i to w php-fpm.d pliku/www.conf:
catch_workers_output = yes
byłem niewidomy, a teraz widzę ... – cucu8