nginx配置虚拟域名后直接输出或下载网页源代码而不是运行网页文件的解决办法
参考链接:http://blog.csdn.net/iefreer/article/details/44293711
遇到这种问题,通常是由于fastcgi_script_name访问脚本路径不正确引起的。
尤其是带有子目录的情况,比如对于Yii框架而言,路径通常是project/web
那么如果在URL中访问 /project/index.php,那么nginx配置中的SCRIPT_NAME会是全路径:project/index.php
如果你配置中的代码如下:
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
那么实际访问的文件就是/var/site_root/project/web/project/index.php,这显然不是我们想要的结果,我们想访问的是/project/web/index.php。
这些错误可以通过查看php-fpm.log(错误日志)来跟踪。
解决方法是修改相应的路径配置。
以上是链接原文。
看了以后我就修改了一个地方就可以正常访问了。
1 location ~ \.php$ { 2 root /var/www/web; 3 fastcgi_pass 127.0.0.1:9000; 4 fastcgi_index index.php; 5 fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 6 include fastcgi_params; 7 }
主要是修改fastcgi_param这一条。