La modificación / etc / hosts no funciona correctamente. ¿Qué hacer?

10

He agregado estas líneas al archivo de hosts:

127.0.0.1 localhost adobe.com
127.0.0.1 adobe.com

Funciona perfectamente en ventanas. Pero en Ubuntu 11.10 cuando trato de acceder usando Firefox, el sitio web se está abriendo.

Google Chrome aunque admite la configuración / etc / hosts. Google Chrome muestra:

"¡Funciona! Esta es la página web predeterminada para este servidor. El software del servidor web se está ejecutando pero todavía no se ha agregado contenido".

Aprendiz curioso
fuente

Respuestas:

10

Puedo confirmar su problema que parece afectar, entre ambos, Chrome y Firefox, solo Firefox. Esta es una respuesta para los usuarios que están afectados por el mismo problema y si están afectados por ambos / todos los navegadores. Siga estos pasos para que esto funcione correctamente. Suponiendo que ya haya editado el /etc/hostsarchivo, le recomiendo las siguientes 2 formas de editar el archivo:

  • Gedit - gksudo gedit /etc/hosts(Ahora tiene una forma amigable de editar el archivo. Gksu que proporciona gksudo se descontinúa en los repositorios oficiales 18.04 y posteriores).
  • nano: sudo nano /etc/hosts(ahora tiene una forma amigable de editar el archivo desde el terminal).

Y tienes por ejemplo:

127.0.0.1 localhost adobe.com

o

127.0.0.1 localhost
127.0.0.1 adobe.com

(Ambos son lo mismo).

Primero pruebe esto para ver si funciona correctamente desde el terminal. Escriba ping adobe.comy debería responder desde la asignación de IP. En este caso, debería responder con 127.0.0.1. Eso significa que está bien.

Luego continuamos con las pruebas del navegador. Probaste Chrome y funcionó. Cambiaste /etc/hostsentre tener y no tener la entrada para adobe.com y funcionó cada vez que la cambiaste. Pero luego fuiste con Firefox, podría haber funcionado la primera vez, pero después de cambiar el hostsarchivo de un lado a otro, de alguna manera dejó de funcionar. Esto significa que es un problema de caché o un problema para resolver el nombre correcto.

En el caso de Firefox y al resolver el nombre, Firefox agrega el prefijo www al sitio web de adobe para que se vea así "www.adobe.com", pero en Chrome se ve así "adobe.com". Ambos apuntan al mismo lugar y el prefijo www está ahí para decirle que el lugar que está visitando es un servicio web. Pero en el caso de su problema, necesitaría agregarlo al hostsarchivo para que cuando Firefox agregue el prefijo www funcione. Entonces se vería así:

127.0.0.1 localhost
127.0.0.1 adobe.com www.adobe.com

O igual

127.0.0.1 localhost adobe.com www.adobe.com

NOTA: Recuerde que DEBE presionar F5para actualizar la pestaña del sitio / Firefox o cerrar la pestaña y abrirla nuevamente para probar. De alguna manera presionar Entercomo loco no servirá.

Esto debería resolver el problema para algunos usuarios, pero suponiendo que hasta ahora todavía no haya resuelto el problema, podemos probar qué podría ser.

Tenemos aquí un par de niveles de caché para verificar entonces. Obtuviste tu caché de programa, en este caso Firefox, luego tienes tu caché de sistema, en este caso Ubuntu, y luego tienes tu caché de hardware, en este caso tu enrutador.

Por lo que sé, la versión de escritorio de Ubuntu no tiene un servicio de caché DNS instalado de forma predeterminada. El más comúnmente conocido es nscd y si lo tuviera instalado, un simple /etc/init.d/nscd restartlo hará. Pero para la mayoría de las personas no tendrán esto instalado, por lo que podemos anular la falla del sistema Ubuntu.

Eso deja el enrutador y el navegador web. En el caso del enrutador, deberá configurarlo para detener el caché DNS o volver a configurarlo para resolver este problema. Esto depende totalmente del modelo de enrutador, del fabricante, etc. No todos los enrutadores tienen caché de DNS, pero algunos sí, y necesitaría ver en su configuración si tiene esta opción y si la opción está habilitada. Pero supongamos que no tiene un enrutador habilitado para el almacenamiento en caché de DNS.

Esto deja el navegador.

Para saber si Firefox está siendo malo con la caché de DNS, puede instalar un complemento para verificar la caché de DNS en Firefox. el que recomiendo es DNS Cache .

ingrese la descripción de la imagen aquí

Después de reiniciar Firefox, debería ver un engranaje en la parte inferior (similar al engranaje de Ubuntu en la esquina superior derecha). Puede hacer clic con el botón izquierdo o derecho en Cog y debería ver opciones como Habilitar / Deshabilitar DNS y Vaciarlo. Esto ayudará en el caso de que el problema sea la caché de DNS de Firefox. Juega con ello.

Creo que tengo todas las formas en que puedes resolver eso. Si me perdí algo, avísame.

Luis Alvarado
fuente
Si Firefox no respeta el hostsarchivo de la máquina local (es decir, si el problema persiste incluso después de wwwagregar el dominio con el subdominio e incluso después de actualizar la página), recomiendo informarlo como un error. (No estoy seguro de lo que sería un error en el , ya que Firefox presumiblemente utiliza instalaciones de resolución de DNS del sistema operativo, que hacen , o se supone que, respetarlo. Pero se puede informar de ello en contra firefoxen Ubuntu y luego la solución de problemas probablemente podría retarget desde allí.)
Eliah Kagan
@EliahKagan También depende de dónde y cómo sea el hosting / dominio. Algunos sitios ofrecen la opción de habilitar el uso del subdominio www y otros no lo tienen preconfigurado, por lo que cuando uno intentó ir a www.eliah.com no funciona, pero eliah.com sí.
Luis Alvarado
Sí, por supuesto. No estoy diciendo que www.foo.netdebería funcionar solo porque foo.netfunciona. Por el contrario, si foo.nety www.foo.netestán definidos en 127.0.0.1in /etc/hosts, al escribir foo.neten la barra de direcciones de un navegador web y presionar enter, el navegador intentará abrir una conexión 127.0.0.1:80. Si no es así, hay un error en alguna parte.
Eliah Kagan
@EliahKagan - ¡Ah! si, si, porsupuesto. En ese caso, si no funciona, la computadora está poseída por un demonio. Necesitaríamos un exorcista y mucha agua bendita o un mejor diagnóstico del problema.
Luis Alvarado
Exorcista + agua bendita y un mejor diagnóstico parece ser el curso más prudente. :)
Eliah Kagan
7

Sé que este hilo tiene un año, pero me topé con él buscando las respuestas al mismo problema. ¡Finalmente encontré una solución! Resulta que /etc/hostsDNS está omitiendo completamente el archivo. Para cambiar esto, debe editar /etc/nsswitch.confe incluir filesdebajo hosts. Ejemplo a continuación:

passwd:         compat
group:          compat
shadow:         compat

hosts:          dns files myhostname <-- this line here.
networks:       files

protocols:      db files
services:       db files
ethers:         db files
rpc:            db files

netgroup:       nis

Esto asegurará que el /etc/hostsarchivo esté incluido en la verificación de resolución de nombre. Primero verificará DNS y luego el hostsarchivo. Estoy seguro de que OP ya no necesita esta información, pero sigue siendo buena para cualquiera que busque respuestas a este problema.

También debe reiniciar para que esto surta efecto

Sam Chonburi
fuente
Tengo "archivos mdns4_minimal [NOTFOUND = return] dns mdns4" allí en Ubuntu 12.04 pero / etc / hosts todavía no funciona ... parece que estoy teniendo un problema diferente.
Shnatsel
¿Puedes pegar el código completo?
Sam Chonburi
Aquí está el archivo de configuración completo: pastebin.com/hDBGrrwn Supongo que este es el predeterminado en Ubuntu 12.04
Shnatsel
Todo se ve bien. ¿Qué es lo que estás tratando de hacer?
Sam Chonburi
No obtuve: ¿qué debo agregar en esta línea? /etc/hosts? hosts? ¿O que?
Hola Ángel
2

Creo que etc/hostsse utiliza en muchos niveles de amantes en la pila de software de red que el navegador en sí. Es decir, los cambios en ese archivo deberían afectar a cualquier navegador.

Lo que está viendo puede ser el resultado del almacenamiento en caché de las entradas DNS de Firefox, es decir, abrió el sitio web en Firefox, Firefox recuerda la dirección IP correspondiente al dominio adobe.com, modificó /etc/hosts y volvió a cargar la página. Firefox no emite una nueva consulta DNS y utiliza los datos en caché en su lugar. Luego, abre Chrome, realiza una nueva consulta DNS y usa lo que haya ingresado /etc/hostscomo la dirección IP de adobe.com

Reiniciar Firefox debería solucionar el problema.

Sergey
fuente
2

Todas las respuestas son geniales, pero la forma más corta de solucionarlo es:

después de modificar / etc / hosts (y posiblemente reiniciar Firefox), vuelva a cargar la pestaña problemática con Ctrl+Shift+R. Omitirá cualquier tipo de caché que Firefox pueda tener.

Luka Ramishvili
fuente
1

Mi problema era que tenía varias entradas para el mismo nombre de dominio. El sistema solo vio la primera ocurrencia.

127.0.0.1 domain1.com domain2.com domain3.com # <-- WENT UNNOTICED
# .
# .
192.168.1.21 domain1.com # <-- DOESN'T WORK
Kaushik Sv
fuente
0

¿Podrías intentarlo?

  1. Edite el archivo / etc / hosts.
  2. Agregar líneas siguientes

     # /etc/hosts
     127.0.0.1  localhost
     127.0.1.1  myhost01
     127.0.1.2  myhost02
    
OleksDovz
fuente
0

en Ubuntu 14.04 cambiando el archivo / etc / hosts para que solo un host por línea funcionara para mí, luché durante horas trabajando con un host host de IP, que cambié a host IP en cada línea y funcionó>. <

Miguel
fuente
0

Tuve este mismo problema en varias versiones de Ubuntu. El último levantó su fea cabeza el 17.04 y el 16.04. Descubrí que tenía que formatear el archivo de hosts de esta manera:

127.0.0.1 localhost

127.0.0.1 www.facebook.com facebook.com

es decir, debe poner en la url el www y luego nuevamente sin. No tengo idea de por qué esto funciona. Simplemente guarde el archivo y luego haga ping a la url como en:

ping www.facebook.com

y debe resolver la dirección de bucle invertido o cualquier otra dirección que desee.

80.82.xxx.xxx www.example.com example.com

Trabajó para mi.

Jules
fuente