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这一条。

时间: 2024-10-07 18:09:45

nginx配置虚拟域名后直接输出或下载网页源代码而不是运行网页文件的解决办法的相关文章

nginx配置虚拟域名以及代理

server { listen 80;#监听80端口 server_name www.basic.com;#虚拟域名 root "D:/WWW/basic";#虚拟域名指向目录 location / { index index.html index.htm index.php l.php;#autoindex当成首页的文件 autoindex on; } //配置php解析器,要不然它会把php后缀的文件当成一个静态文件下载 location ~ \.php(.*)$ { fastcg

nginx配置虚拟域名

修改 \etc\nginx\conf.d\default.conf 复制之前的server模块一份,重点修改server_name.root.fastcgi_param 如: server { listen 80; server_name exam.baidu.com; location / { root /var/www/html/exam; index index.php index.html index.htm; } error_page 404 /404.html; location =

配置虚拟域名

在wamp环境下配置虚拟域名: 1.开启Apache的mod_rewrite功能模块 2.引入http-vhosts.conf 文件 3.添加VirtualHost 配置 找到:wamp/bin/apache/apache2.4.9/conf/httpd.conf 配置文件 打开: 查找rewrite,找到rewrite.so这行,把#去掉,表示开启重写 搜索vhosts.conf,把它的注释也去掉 然后按照 vhosts 的这个路径找到httpd-vhosts.conf这个文件,打开 里面就是

LNMP架构应用实战——Nginx配置虚拟主机

LNMP架构应用实战--Nginx配置虚拟主机        前面介绍了nginx服务的安装与配置文件,今天介绍下它的另一种实用配置--"虚拟主机",每个虚拟主机可以是一个独立的网站,可以具有独立的域名,同一台服务器上的不同的虚拟主机之间是独立的,用户访问不同虚拟主机如同访问不同的服务器一样,因此它不需要为一个单独的WEB站点提供单独一个nginx服务器和一个单独的nginx进程 1.nginx虚拟主机简单介绍 同apache服务一样,它也有三种不同的虚拟主机,基于域名的虚拟主机.基于

nginx配置虚拟主机vhost的方法详解

摘自:http://www.jb51.net/article/107331.htm Nginx vhost配置,可实现基于ip.端口号.servername的虚拟主机,同时可避免直接修改主配置文件.在nginx下配置虚拟主机vhost非常方便.这篇文章主要介绍了nginx配置虚拟主机vhost的方法,需要的朋友可以参考下 前言 所谓虚拟主机,是说通过几个不同的url地址,都能到达nginx环境,只不过针对不同的url,处理的逻辑不同.nginx支持虚拟主机,但是浏览器等客户端不知道,所以虚拟主机

史上最详细的wamp配置虚拟域名步骤

wamp配置虚拟域名是web开发的基础,早前刚入行时候,配置wamp虚拟域名颇头大,经常遇到服务器连接不上,改来改去改不好,找遍网上没找到一个全面的方法,对着改都改不好,被公司的老鸟取笑,后来自己找了个时间仔细研究了下,自己写了份详细的配置过程,现分享出来,希望能帮助新手们. wamp环境配置虚拟域名方法: 1.开启apach的mode_rewrite功能模块 在bin里打开httpd.conf,找到rewrite_module modules/mod_rewrite.so这行 去掉前面的# 2

wamp集成环境下配置虚拟域名

wamp集成环境下配置虚拟域名,多域名.在有一些情况下会用到. 第一步:找到目录   wamp/bin/apache/apache2.4.9/conf/httpd.conf  找到准确位置  如图: 文件找到后,用记事本,或工具打开,大约在500行左右,有一句 #Include conf/extra/httpd-vhosts.conf 去掉#号,代表功能启用.虚拟机开启.如图所示: 第二步:配置文件 同样目录下 wamp/bin/apache/apache2.4.9/conf/extra/htt

关于Nginx配置Https server后,乱跳的问题解决记录

大部分的服务器上,我们会在一个Nginx服务下配置多个vhost,以最大化运用服务器资源.然而,为其中一个vhost域名启用 HTTPS 之后,发现百度统计的实时访客或入口页中,存在一些来自其它域名的请求.即通过 https://some-other-domain.com/some-url 来访问对应的 https://www.domain.com/some-url 结果就是 Google 浏览器显示了一个安全警告页面,认为这是一个不安全的网页.因为我只配置了 www.domain.com 的

使用xampp在本地环境配置虚拟域名

最近在学习ThinkPHP5.1.手册里面提到"实际部署中,应该是绑定域名访问到public目录,确保其它目录不在WEB目录下面."所以把使用xampp在本地配置虚拟域名的过程记录下来作为总结. 1. 入口文件位置 C:\xampp\htdocs\tp5.1\public\index.php 2. 绑定域名 首先打开WINDOWS\system32\drivers\etc目录下的 hosts 文件,在文件最下面加入域名,比如说tp5.test.com # localhost name