Por que o localhost não funciona no Windows 8.1, mas o 127.0.0.1 funciona?

1

Eu tenho um servidor HTTP em execução na porta 9876.

Coloco http://127.0.0.1:9876/ no Chrome e a página é carregada instantaneamente.

Coloco http://localhost:9876/ no Chrome e a página nunca é carregada.

Eu nunca modifiquei C: \ Windows \ System32 \ drivers \ etc \ hosts.

Todas as linhas do arquivo hosts estão comentadas.

As seguintes linhas existem no arquivo e podem ser relevantes:

# localhost name resolution is handled within DNS itself.
#   127.0.0.1       localhost

Como eu disse, eu mesmo não adicionei essas linhas. Eu não editei o arquivo hosts.

Obviamente, posso descomentar a segunda linha para fazer o trabalho localhost. Mas por que isso é necessário se a primeira linha estiver correta? A Microsoft escreveu a primeira linha? Parece que eles estão me dizendo que o localhost funcionará sem ser definido.

    
por cja 06.02.2014 / 16:24

5 respostas

0

Não consigo encontrar documentação confiável, mas parece que, desde o Windows 7, eles alteraram a resolução do host local para o DNS. Eu estou supondo que o serviço de cliente DNS realmente devolve localhost quando você faz uma operação, porque seu servidor DNS, onde quer que seja, provavelmente não resolverá localhost. Você sempre pode definir o arquivo de hosts, e isso pode substituir o que o cliente DNS lhe oferece.

Aqui está pelo menos a prova de que mudou desde o Windows 7:

link

Estou assumindo que é o serviço DNS, porque na minha caixa Win8, essas linhas são comentadas, e ainda localhost resolve volta para :: 1 e, claro, meu DNS não está configurado para IPv6, e mesmo se fosse, não resolveria localhost.

    
por 07.02.2014 / 01:19
1

Se você remover o segundo '#', o localhost também deve funcionar.

de

# 127.0.0.1     localhost

para

127.0.0.1     localhost
    
por 06.02.2014 / 16:33
0

O comentário está falando sobre a implementação do DNS no próprio Windows, não sobre a implementação do DNS no Chrome.

    
por 06.02.2014 / 18:44
0

Sim, a Microsoft fez essa alteração. Aparentemente, isso ocorre porque em uma única máquina IP6 (será mais comum no futuro) que a entrada padrão de resolução de localhost para o endereço IP4 fará com que ele não funcione. Então, eles moveram essa lógica para o próprio resolvedor de DNS, onde poderiam ser desativados independentemente.

Fonte: link

    
por 10.03.2018 / 01:10
-1

Uma atualização para o Windows 8.1 excluirá alguns ou talvez todos os serviços adicionados ... ou seja, o Apache, MySQL. Basta olhar para os serviços em execução no seu computador, você vai notar que todos os seus serviços relacionados à web são GONE.

    
por 25.04.2018 / 23:18