> 백엔드 개발 > PHP 튜토리얼 > nginx配置,为何两个配置一模一样的server,一个能解析php,一个不能解析php呢?

nginx配置,为何两个配置一模一样的server,一个能解析php,一个不能解析php呢?

WBOY
풀어 주다: 2016-06-06 20:48:59
원래의
1076명이 탐색했습니다.

解决了,我将执行文件由info.php修改为i.php之后就ok了,我想,可能是浏览器缓存。。。。。

下面有两个sever块,第二个就是复制第一个sever,只是将目录位置由dev修改为test,出现了这样的结果:

  1. 第一个sever全部正常,能够解析html,也能解析php
  2. 第二个sever只能解析html,遇到.php的页面弹出下载窗口

    http {
    include mime.types;
    default_type application/octet-stream;

    <code>sendfile        on;
    tcp_nopush     on;
    
    keepalive_timeout  65;
    tcp_nodelay on;
    
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
    fastcgi_buffer_size 64k;
    fastcgi_buffers 4 64k;
    fastcgi_busy_buffers_size 128k;
    fastcgi_temp_file_write_size 128k;
    
    gzip  on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types       text/plain application/x-javascript text/css application/xml;
    gzip_vary on;
    
    server {
        listen       80;
        server_name  dev.com;
        fastcgi_intercept_errors on;
    
        location / {
            index index.html index.htm index.php;
            root  /Library/WebServer/public_html/dev;
        }
    
        location ~ .*\.(php|php5)?$ {
            fastcgi_pass  127.0.0.1:9000;
            fastcgi_index index.php;
            include /usr/local/etc/nginx/fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME  /Library/WebServer/public_html/dev/$fastcgi_script_name;
        }
    
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ {
            expires      30d;
        }
    
        location ~ .*\.(js|css)?$ {
            expires      1h;
        }
    
        error_page   400 401 402 403 404  /40x.html;
        location = /40x.html {
            root /Library/WebServer/public_html/dev/;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            #root   html;
            root /Library/WebServer/public_html/dev/;
        }
    }
    
    server {
        listen       80;
        server_name  test.com;
    
        location / {
            index index.html index.htm index.php;
            root  /Library/WebServer/public_html/test;
        }
    
        location ~ .*\.(php|php5)?$ {
            fastcgi_pass  127.0.0.1:9000;
            fastcgi_index index.php;
            include /usr/local/etc/nginx/fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME  /Library/WebServer/public_html/test/$fastcgi_script_name;
        }
    
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ {
            expires      30d;
        }
    
        location ~ .*\.(js|css)?$ {
            expires      1h;
        }
    
        error_page   400 401 402 403 404  /40x.html;
        location = /40x.html {
            root /Library/WebServer/public_html/dev/;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            #root   html;
            root /Library/WebServer/public_html/dev/;
        }
    }
    
    
    log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
                        '$status $body_bytes_sent "$http_referer" '
                        '"$http_user_agent" $http_x_forwarded_for';
    
    access_log  /usr/local/var/log/nginx/access.log  access;
    </code>
    로그인 후 복사
    로그인 후 복사

    }

回复内容:

解决了,我将执行文件由info.php修改为i.php之后就ok了,我想,可能是浏览器缓存。。。。。

下面有两个sever块,第二个就是复制第一个sever,只是将目录位置由dev修改为test,出现了这样的结果:

  1. 第一个sever全部正常,能够解析html,也能解析php
  2. 第二个sever只能解析html,遇到.php的页面弹出下载窗口

    http {
    include mime.types;
    default_type application/octet-stream;

    <code>sendfile        on;
    tcp_nopush     on;
    
    keepalive_timeout  65;
    tcp_nodelay on;
    
    fastcgi_connect_timeout 300;
    fastcgi_send_timeout 300;
    fastcgi_read_timeout 300;
    fastcgi_buffer_size 64k;
    fastcgi_buffers 4 64k;
    fastcgi_busy_buffers_size 128k;
    fastcgi_temp_file_write_size 128k;
    
    gzip  on;
    gzip_min_length  1k;
    gzip_buffers     4 16k;
    gzip_http_version 1.0;
    gzip_comp_level 2;
    gzip_types       text/plain application/x-javascript text/css application/xml;
    gzip_vary on;
    
    server {
        listen       80;
        server_name  dev.com;
        fastcgi_intercept_errors on;
    
        location / {
            index index.html index.htm index.php;
            root  /Library/WebServer/public_html/dev;
        }
    
        location ~ .*\.(php|php5)?$ {
            fastcgi_pass  127.0.0.1:9000;
            fastcgi_index index.php;
            include /usr/local/etc/nginx/fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME  /Library/WebServer/public_html/dev/$fastcgi_script_name;
        }
    
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ {
            expires      30d;
        }
    
        location ~ .*\.(js|css)?$ {
            expires      1h;
        }
    
        error_page   400 401 402 403 404  /40x.html;
        location = /40x.html {
            root /Library/WebServer/public_html/dev/;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            #root   html;
            root /Library/WebServer/public_html/dev/;
        }
    }
    
    server {
        listen       80;
        server_name  test.com;
    
        location / {
            index index.html index.htm index.php;
            root  /Library/WebServer/public_html/test;
        }
    
        location ~ .*\.(php|php5)?$ {
            fastcgi_pass  127.0.0.1:9000;
            fastcgi_index index.php;
            include /usr/local/etc/nginx/fastcgi_params;
            fastcgi_param  SCRIPT_FILENAME  /Library/WebServer/public_html/test/$fastcgi_script_name;
        }
    
        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|ico)$ {
            expires      30d;
        }
    
        location ~ .*\.(js|css)?$ {
            expires      1h;
        }
    
        error_page   400 401 402 403 404  /40x.html;
        location = /40x.html {
            root /Library/WebServer/public_html/dev/;
        }
    
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            #root   html;
            root /Library/WebServer/public_html/dev/;
        }
    }
    
    
    log_format  access  '$remote_addr - $remote_user [$time_local] "$request" '
                        '$status $body_bytes_sent "$http_referer" '
                        '"$http_user_agent" $http_x_forwarded_for';
    
    access_log  /usr/local/var/log/nginx/access.log  access;
    </code>
    로그인 후 복사
    로그인 후 복사

    }

解决了,我将执行文件由info.php修改为i.php之后就ok了,我想,可能是浏览器缓存。。。。。

应该是SCRIPTFILENAME 设置的问题
你看include /usr/local/etc/nginx/fastcgi
params 这个文件里的SCRIPT_FILENAME是什么

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿