Heim > Backend-Entwicklung > PHP-Tutorial > nginx配置,为何两个配置一模一样的server,一个能解析php,一个不能解析php呢?

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

WBOY
Freigeben: 2016-06-06 20:48:59
Original
1077 Leute haben es durchsucht

解决了,我将执行文件由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>
    Nach dem Login kopieren
    Nach dem Login kopieren

    }

回复内容:

解决了,我将执行文件由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>
    Nach dem Login kopieren
    Nach dem Login kopieren

    }

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

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

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage