SO有许多文章提到了这个错误代码:
FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream...
那可能意味着这个错误信息基本上是毫无用处的。
这条消息告诉我们,由于某种原因,FastCGI处理程序不喜欢它接收到的内容。问题在于有时候我们不知道具体原因。
所以我再次提出问题——我们如何调试此错误代码?
考虑一下我们有一个非常简单的网站,只有phpinfo.php文件。此外,还有一个非常简单的nginx配置,如下:
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;
}
}
我们如何精确查看fastcgi_params发送给脚本的输出/日志?
我们如何查看实际的错误信息? 在我的情况下,我正在使用php-fpm。 它的日志中没有有关此错误的任何信息。 日志未针对此错误追加任何行。 php-fpm是否有详细模式?
/var/log/php-fpm/error.log
/var/log/php-fpm/www-error.log
我已经尝试在php-fpm.conf文件中设置此项。log_level = notice
而这是在 php-fpm.d/www.conf 文件中的内容:
catch_workers_output = yes
; %f:脚本文件名 ; 默认值:“%R - %u %t \“%m %r\” %s” access.format = "%R - %u %t \“%m %r%Q%q\” %s %f %{mili}d %{kilo}M %C%%"
- wiktorsystemctl restart php7.3-fpm
) - Melroy van den Berg