记录一个Nginx的操作错误

环境是Nginx+PHP,错误是这样的:PHP各个常见函数、语法均可正常使用,但用$GET时,Nginx却始终没有收到GET参数。如下测试代码:

<?php
$id = $_GET['id'];
echo $id;
?>

通过 http://localhost/index.php?id=1 访问,正常情况下浏览器会显示一个1,但此时却未显示1。首先不会是浏览器的问题,即便是浏览器的问题,也不会两个浏览器均出问题,PHP程序本身的问题也基本可以排除,那么就只有Nginx的问题,Nginx我使用的是稳定的版本,所以这个不会是BUG所致,那就八成是配置问题了。Nginx的参数是定义在fastcgiparams文件里的。仔细看了看该文件的内容,第一行本应该是:

fastcgi_param  QUERY_STRING       $query_string;

但可能因为我在修改的时候不小心多摁了一下回车,于是第一行是空行,所以导致了问题。我把空行删了,重启Nginx,恢复正常了。