Rumah >pembangunan bahagian belakang >tutorial php >nginx 虚拟主机配置指向不同目录,访问的时候全部指向网站跟目录

nginx 虚拟主机配置指向不同目录,访问的时候全部指向网站跟目录

WBOY
WBOYasal
2016-06-06 20:33:351652semak imbas

在win8下配置nginx虚拟主机
host文件:

<code>127.0.0.1 z.vilay.com
127.0.0.1 v.vilay.com
</code>

nginx.conf文件:

<code>#user nobody; 
worker_processes 1; 
#error_log logs/error.log; 
#error_log logs/error.log notice; 
#error_log logs/error.log info; 
#pid logs/nginx.pid; 
events { 
worker_connections 64; 
} 
http { 
    include mime.types; 
    default_type application/octet-stream; 
    sendfile on; 
    keepalive_timeout 65; 
    #gzip on; 
    include vhost/*.conf; 
} 
</code>

nginx/vhost下两个文件v.conf,default.conf
v.conf文件:

<code>server {
        listen       80;
        server_name  v.vilay.com;
        root   F:/www/vtest;

        #charset koi8-r;

        access_log  logs/v.access.log;

        location / {

            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    }
</code>

default.conf文件:

<code>    server {
        listen       80;
        server_name  z.vilay.com;
        root   F:/www;

        #charset koi8-r;

        access_log  logs/default.access.log;

        location / {

            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    }
</code>
<code>nginx重启访问的时候全部指向了网站根目录F:/www底下
</code>

回复内容:

在win8下配置nginx虚拟主机
host文件:

<code>127.0.0.1 z.vilay.com
127.0.0.1 v.vilay.com
</code>

nginx.conf文件:

<code>#user nobody; 
worker_processes 1; 
#error_log logs/error.log; 
#error_log logs/error.log notice; 
#error_log logs/error.log info; 
#pid logs/nginx.pid; 
events { 
worker_connections 64; 
} 
http { 
    include mime.types; 
    default_type application/octet-stream; 
    sendfile on; 
    keepalive_timeout 65; 
    #gzip on; 
    include vhost/*.conf; 
} 
</code>

nginx/vhost下两个文件v.conf,default.conf
v.conf文件:

<code>server {
        listen       80;
        server_name  v.vilay.com;
        root   F:/www/vtest;

        #charset koi8-r;

        access_log  logs/v.access.log;

        location / {

            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    }
</code>

default.conf文件:

<code>    server {
        listen       80;
        server_name  z.vilay.com;
        root   F:/www;

        #charset koi8-r;

        access_log  logs/default.access.log;

        location / {

            index  index.html index.htm index.php;
        }

        #error_page  404              /404.html;

        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

        # proxy the PHP scripts to Apache listening on 127.0.0.1:80
        #
        #location ~ \.php$ {
        #    proxy_pass   http://127.0.0.1;
        #}

        # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
        #
        location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
            include        fastcgi_params;
        }

        # deny access to .htaccess files, if Apache's document root
        # concurs with nginx's one
        #
        location ~ /\.ht {
            deny  all;
        }
    }
</code>
<code>nginx重启访问的时候全部指向了网站根目录F:/www底下
</code>

目测这里有问题

<code>fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
</code>

可以改成这样试试

<code>fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
</code>
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn