首页 > 代码库 > nginx FastCGI错误Primary script unknown解决办法

nginx FastCGI错误Primary script unknown解决办法

有时候nginx错误日志里面显示这个报错,很烦。

2017/03/16 10:57:36 [error] 1751#0: *167548 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 183.82.0.15, server: www.crowncredit.cn, request: "GET /phpMyAdmin/scripts/setup.php HTTP/1.1", upstream: "fastcgi://192.168.1.11:9000", host: "192.168.1.116"

显示找不到GET的东西。


在Nginx配置文件中找到定义调用脚本文件的地方,如:

fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

修改成如下方式($document_root):

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

$document_root 代表当前请求在root指令中指定的值。如

           location ~ ^.+.php {

            root           /usr/html;

            fastcgi_index  index.php;

            fastcgi_pass 192.168.1.11:9000;

            fastcgi_param  SCRIPT_FILENAME $document_root$fastcgi_script_name;

            fastcgi_split_path_info ^((?U).+.php)(/?.+)$;

            fastcgi_param PATH_INFO $fastcgi_path_info;

            include        fastcgi_params;

      }

上面配置中的$document_root就是针对/usr/local/nginx/html目录下的php文件进行解析。


如果还没有解决,就在location ~ ^.+.php  下面加

try_files      $uri =404;

意思是解析php先返回404,然后再进行下面解析。


nginx FastCGI错误Primary script unknown解决办法