Tengo un programa en mi máquina escuchando en el puerto 8080 para responder a las solicitudes HTTP. Pero cuando intento ir a http://localhost:8080/
en un navegador...
Chrome dice:
La página de localhost no está funcionando
Localhost no envió ningún dato. ERR_EMPTY_RESPONSE
Firefox redirige la solicitud a www.localhost.com:8080 lo cual, por supuesto, no es correcto. Mis investigaciones sugieren que esto se debe a que no puede encontrar localhost.
Safari dice que no puede abrir la página porque "el servidor cerró inesperadamente la conexión".
Sin embargo, si voy a http://127.0.0.1:8080
la página carga correctamente.
Por lo tanto, parecería que por alguna razón OS X no está resolviendo correctamente localhost a 127.0.0.1. Si intento hacer ping localhost
desde la línea de comandos, funciona, pero según entiendo, la resolución de nombres funciona de manera diferente en diferentes lugares.
He leído varios problemas donde localhost no se resuelve, por ejemplo, desde ping, pero no estoy teniendo ese problema. Todos los casos donde localhost no funcionaba en el navegador parecen no tener soluciones relacionadas con el problema real que estoy teniendo. También he visto lugares donde mencionan que localhost sí funciona en el navegador, por lo que me pregunto qué estoy haciendo mal aquí.
Desde comentarios
Si pruebo la dirección IPv6 para localhost http://[::1]:8080/
entonces obtengo los mismos errores que al usar localhost.
0 votos
¿Firefox redirige una URL "http://" correctamente formada?
0 votos
¿Cuál es tu servidor y qué muestran sus registros?
0 votos
@Allan sí, lo hace
0 votos
@Mark mi servidor es una aplicación node.js utilizando express. No produce ninguna salida cuando intento conectarme a "localhost", pero registra la dirección IP y la URL de conexión al conectarse a través de 127.0.0.1
0 votos
Quizás OSX esté encontrando localhost como la dirección IPv6 ::1 - ¿qué sucede al ingresar http://::1:8080?
0 votos
@Mark Al ingresar esa URL exacta en la barra de direcciones de Chrome, se devuelve una búsqueda en Google como si fuera la cadena de búsqueda.
0 votos
@MarK curiosamente, lo primero que aparece en esa página es una pregunta de SuperUser SE que menciona el uso de http://\[::1\]:8080/ ... cuando intento eso URL obtengo el mismo mensaje de error anterior, reemplazando localhost con [::1].
0 votos
OK entonces, ¿tu servidor entiende IPv6? ping es puramente IPv4, ping6 utiliza el nuevo protocolo
0 votos
@Mark en realidad está escuchando explícitamente en 127.0.0.1... tcp4 0 0 127.0.0.1.8080 . ESCUCHAR tcp46 0 0 .8080 *. ESCUCHAR