não pode acessar o servidor nginx do IP

1

Então, 2 dias atrás, eu posso ver aquela página onde ela diz "Welcome to nginx", no entanto, a partir de agora, quando tentei acessá-la, ela diz que 404 páginas não foram encontradas ... Por que isso acontece? Dentro da minha pasta habilitada para sites eu tenho um arquivo chamado default e tem o seguinte:

# You may add here your
# server {
#       ...
# }
# statements for each of your virtual hosts

server {
        listen   80;
        server_name 127.0.0.1;

        access_log  /var/log/nginx/localhost.access.log;

        location / {
                root   /var/www/nginx-default;
                index  index.html index.htm;
        }

        location /doc {
                root   /usr/share;
                autoindex on;
                allow 127.0.0.1;
                deny all;
        }

        location /images {
                root   /usr/share;
                autoindex on;
        }

        #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   /var/www/nginx-default;
        #}

        # 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  /var/www/nginx-default$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;
        }
}


# another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
#listen   8000;
#listen   somename:8080;
#server_name  somename  alias  another.alias;

#location / {
#root   html;
#index  index.html index.htm;
#}
#}


# HTTPS server
#
#server {
#listen   443;
#server_name  localhost;

#ssl  on;
#ssl_certificate  cert.pem;
#ssl_certificate_key  cert.key;

#ssl_session_timeout  5m;

#ssl_protocols  SSLv2 SSLv3 TLSv1;
#ssl_ciphers  ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
#ssl_prefer_server_ciphers   on;

#location / {
#root   html;
#index  index.html index.htm;
#}
#}

Aqui está o meu arquivo nginx.conf:

user www-data;
worker_processes  4;

error_log  /var/log/nginx/error.log;
pid        /var/run/nginx.pid;

events {
    worker_connections  1024;
    # multi_accept on;
}

http {
    include       /etc/nginx/mime.types;

    access_log  /var/log/nginx/access.log;

    sendfile        on;
    #tcp_nopush     on;

    #keepalive_timeout  0;
    keepalive_timeout  65;
    tcp_nodelay        on;

    gzip  on;
    gzip_disable "MSIE [1-6]\.(?!.*SV1)";

    include /etc/nginx/conf.d/*.conf;
    include /etc/nginx/sites-enabled/*;
}

# mail {
#     # See sample authentication script at:
#     # http://wiki.nginx.org/NginxImapAuthenticateWithApachePhpScript
#
#     # auth_http localhost/auth.php;
#     # pop3_capabilities "TOP" "USER";
#     # imap_capabilities "IMAP4rev1" "UIDPLUS";
#
#     server {
#         listen     localhost:110;
#         protocol   pop3;
#         proxy      on;
#     }
#
#     server {
#         listen     localhost:143;
#         protocol   imap;
#         proxy      on;
#     }
# }

O que estou fazendo de errado aqui? Eu tenho outra configuração de host virtual nos sites habilitados também ...

ATUALIZAÇÃO:

As diretivas server_name são: -admin.api.frapi
-api.frapi
-default
-example.com
-php.example.com

    
por EquinoX 04.03.2011 / 09:00

2 respostas

1

O Nginx tentará encontrar um host virtual adequado combinando o nome do host. Se nenhuma correspondência for encontrada, ela usará a primeira definida ou a chamada padrão. Para definir um host virtual padrão, use

server {
   # The default/fallback server must have 'default' in the listen line:
   listen       80 default; 

   # Catch all non-matching requests
   server_name _; 
   access_log  /var/log/nginx/localhost.access.log;

   location / {
        root   /var/www/nginx-default;
        index  index.html index.htm;
   }

   #etc ...

}
    
por 02.06.2011 / 11:51
0

Hmm me parece, que admin.api.frapi é o "padrão", porque está na posição mais alta no diretório. Tente renomear o arquivo padrão para 000-default.

Mais informações: o nginx acessa os sites habilitados alfabeticamente. Se não houver uma configuração de host virtual para o nome do host desejado (fornecido pela solicitação HTTP), o nginx obterá o primeiro arquivo.

    
por 04.03.2011 / 15:50

Tags