在用Nginx做静态服务器的时候,访问后缀名为.php的文件浏览器不会解析,直接显示源码或者下载.究其具体原因,服务器,没有指定php文件的解析方式,在给浏览器的相应中没有说明,所以只能给你下载或者提示你安装.所以要解决此问题,根本是要在nginx.conf中配置php的解析方式.
location ~ [^/]\.php(/|$)
{
#try_files $uri =404;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
其中fastcgi_pass说明的是,当浏览器发起的请求匹配到这个location的时候,会把所有的后缀为php的文件交由本机的9000端口来解析,那么这个9000端口是什么进程呢(看下图,需要自己手动开启),就是php-cgi(CGI英文叫做公共网关接口,就是Apache在遇到PHP脚本的时候会将PHP程序提交给CGI应用程序(php-cgi.exe)解释,解释之后的结果返回给Apache,然后再返回给相应的请求用户).下面的两个自然很好懂了,一个是指定默认的访问文件index.php,另一个是配置文档喽.
参考资料: