nginx FastCGI錯誤Primary script unknown解決辦法

huidaoli發表於2014-09-10
在centos上成功編譯安裝nginx 1.4、php 5.4併成功啟動nginx和php-fpm後,訪問php提示"File not found.",同時在錯誤日誌中看到:

複製程式碼 程式碼如下:
2013/10/22 20:05:49 [error] 12691#0: *6 FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream, client: 192.168.168.1, server: localhost, request: "GET / HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "192.168.168.133"
 

錯誤解決方法:
在Nginx配置檔案中找到定義呼叫指令碼檔案的地方,如:

複製程式碼 程式碼如下:
fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;

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

複製程式碼 程式碼如下:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 

提示:
$document_root 代表當前請求在root指令中指定的值。如:

複製程式碼 程式碼如下:
location / {
       root   /usr/local/nginx/html;
       index  index.php index.html index.htm;
       fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
 

上面配置中的$document_root就是針對/usr/local/nginx/html目錄下的php檔案進行解析。

 

相關文章