Como o redirecionamento do arquivo de hosts falha?

8

Estou tentando redirecionar google.com para minha máquina local por diversão e aprendizado com esse arquivo / etc / hosts no meu Mac.

127.0.0.1 www.google.com

No entanto, www.google.com.br ainda mapeia para a página inicial do Google quando eu a visualizo no Chrome no meu Mac. Por quê?

Basicamente, isso é tudo que fiz:

  1. Digite sudo vim /etc/hosts no terminal.
  2. Introduzido 127.0.0.1 www.google.com no arquivo de hosts.
  3. Salvo e sair do vim.
por David Faux 03.06.2012 / 05:15

3 respostas

8

O arquivo hosts não funciona dessa maneira. Você só pode usá-lo para mapear um hostnames para endereços IP, não para localhost .

Para o seu caso, você usaria 127.0.0.1 www.google.com , ou seja, mapeie www.google.com para 127.0.0.1.

Se você quiser mapear mais nomes de host para um único IP, basta adicionar esses nomes de host na mesma linha, por exemplo, 127.0.0.1 www.a.com www.b.com .

    
por 03.06.2012 / 05:24
6

Um navegador da Web não é a melhor maneira de verificar se a sintaxe hosts está correta. Tente executar

ping www.google.com

e verifique se pinga 127.0.0.1 .

A razão pela qual o Chrome parece ignorar o armazenamento do arquivo hosts é o armazenamento em cache:

Se o Chrome já tiver consultado o IP recentemente (a definição de mais provável depende do tempo de vida (TTL) retornado pelo servidor DNS), ele irá ignorar o arquivo hosts , já que ele conhece o IP correto. Isso é feito para acelerar a navegação na Web.

Para fazer com que o Chrome respeite a nova entrada, faça o seguinte:

  1. Edite /etc/hosts como descrito por @Renan.

  2. Vá para chrome://chrome/settings/clearBrowserData .

  3. Escolha since the beginning of time .

  4. Verifique Empty the cache , mas desmarque tudo o resto.

  5. Clique em Clear browsing data e espere que ele termine.

  6. Reinicie o Chrome.

O Chrome deve respeitar o seu arquivo hosts agora.

    
por 03.06.2012 / 06:40
1

Minha resposta é uma combinação dos itens acima porque estou me conectando ao meu escritório via Fortinet SSL VPN para o Ubuntu 16.04.

A primeira coisa que tive que fazer é abrir meu console de terminal e executar o seguinte comando:

sudo nano /etc/resolvconf/resolv.conf.d/base

Eu adicionei o seguinte exemplo:

searchdomain domain.local
nameserver xxx.xxx.xxx.xxx
nameserver xxx.xxx.xxx.xxx

Em seguida, salvei o arquivo pressionando CTRL-O e fechei nano pressionando CTRL-X .

Eu fiz o seguinte e funcionou perfeitamente:

Para fazer com que o Chrome respeite a nova entrada, faça o seguinte:

Edite /etc/hosts como descrito por @Renan.

  1. Ir para chrome://chrome/settings/clearBrowserData .
  2. Escolha desde o início dos tempos.
  3. Marque a opção Esvaziar o cache, mas desmarque tudo o resto.
  4. Clique em Limpar dados de navegação e aguarde a conclusão.
  5. Reinicie o Chrome.

O Chrome deve respeitar o seu arquivo hosts agora.

    
por 29.03.2017 / 22:24