大多数PHP框架默认采用pathinfo做资源定位,所以要求$_SERVER环境变量中必须要有PATHINFO。

一般在apache或者iis下都没有什么问题,但是在nginx下需要对配置文件做一些设置才可以。 



把下面的代码保存为pathinfo.conf文件,存放在nginx的conf目录下 
set $real_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "(.+?.php)(/.+)
修改 nginx.conf 里的 



location ~ .php${} 这几行部分为 



location ~ .*.php { #去掉 $ ,以便能匹配所有 *.php/* 形式的url 

root /home/xiaomizhou.net;

fastcgi_pass 127.0.0.1:9000;

#fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME document_rootfastcgi_script_name;

include fastcgi_params;

include pathinfo.conf;

}

注意红色部分。