Home >Backend Development >PHP Tutorial >Nginx + php 配置 用IP的方式能访问 域名的方式却不可以

Nginx + php 配置 用IP的方式能访问 域名的方式却不可以

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-06-06 20:34:121189browse

我Nginx 使用localhost:81或者127.0.0.1:81 可以访问 可用设置的域名访问不到这是为什么?
这是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  1024;
}


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

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       81;
        server_name www.test.com;
        root D:/src/web/runroot;
        error_page 404  /404.html;
        error_page   500 502 503 504  /50x.html; if ($remote_addr !~ "123.125.169.174") {
        #       rewrite ^ http://lavaradio.wix.com/lavaradio redirect;
        }
        rewrite ^/api/(.*?)\.json$    /index.php?route=api/$1&_of=json break;
        if (!-f $request_filename) {
            rewrite ^/(.*?)$    /index.php?route=$1 last;
        }       
        location /index.php {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }    
}
</code>

我的C:\Windows\System32\drivers\etc\hosts文件:

<code># Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
127.0.0.1 www.test.com
</code>

回复内容:

我Nginx 使用localhost:81或者127.0.0.1:81 可以访问 可用设置的域名访问不到这是为什么?
这是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  1024;
}


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

    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';

    #access_log  logs/access.log  main;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;

    #gzip  on;

    server {
        listen       81;
        server_name www.test.com;
        root D:/src/web/runroot;
        error_page 404  /404.html;
        error_page   500 502 503 504  /50x.html; if ($remote_addr !~ "123.125.169.174") {
        #       rewrite ^ http://lavaradio.wix.com/lavaradio redirect;
        }
        rewrite ^/api/(.*?)\.json$    /index.php?route=api/$1&_of=json break;
        if (!-f $request_filename) {
            rewrite ^/(.*?)$    /index.php?route=$1 last;
        }       
        location /index.php {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
    }    
}
</code>

我的C:\Windows\System32\drivers\etc\hosts文件:

<code># Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host

# localhost name resolution is handled within DNS itself.
127.0.0.1 www.test.com
</code>

你hosts中是 127.0.0.1 www.test.com
访问域名就到了 127.0.0.1:80 端口了,默认是80
但是你的服务器端口开的是81

访问 www.test.com:81

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn