Llevo un tiempo trabajando con el servidor web integrado de OS X El Capitan. Estoy desarrollando un proyecto de sitio web y por lo tanto, esta fue la solución perfecta para mí. Estaba iniciando el servidor local usando php -S localhost:8088 -t .
en el directorio específico que contiene los datos del sitio web (index.php, etc.). Todo funcionaba bien hasta que un día actualicé la página y de repente se imprimió: Connection refused: localhost:8088
. No se han hecho cambios en ningún archivo de configuración ni nada por el estilo. No importa qué puerto esté utilizando, siempre rechaza la conexión. Enviando una petición a 127.0.0.1
en mi navegador me dice It works!
. Pero, una vez que estoy iniciando el servidor y llamando a 127.0.0.1:8088
mi navegador responde con su página por defecto mostrando que la conexión ha sido rechazada, como si no hubiera iniciado/ejecutado el servidor.
Lo primero que hice fue comprobar si la configuración de Apache está rota. Pero, apachectl configtest
impreso Syntax OK
.
Cuando intenté hacer un ping localhost
En el caso de los paquetes, me encontré con una pérdida del 100% de los paquetes, por lo que al principio pensé que el error podría estar localizado dentro del archivo de hosts. cat /etc/hosts/
imprimió lo siguiente:
##
##
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
255.255.255.255 broadcasthost
::1 localhost
fe80::1%lo0 localhost
Parece apropiado, ¿no? Así que comprobé las opciones de mi cortafuegos y descubrí que tenía activado el "modo sigiloso". Al desmarcarlo, los paquetes ICMP encontraron su camino correctamente y ya no hubo pérdida de paquetes.
El caso es que no sé por qué se ha producido este problema de repente y cómo puedo solucionarlo. Ya restauré todos los archivos de configuración de Apache a los originales, pero eso tampoco lo solucionó. Parece que está escuchando en ese puerto, pero no puedo acceder al servidor ya que siempre rechaza la conexión. Incluso si el servidor no está iniciado, el acceso a localhost
imprime Connection refused: localhost:80
. No sé dónde puede estar localizado el error. El registro de errores de Apache tampoco muestra nada sospechoso.
sudo lsof -i -n -P | grep TCP | grep LISTEN
demostró que httpd
está usando sólo IPv6, así que debería funcionar.
Si necesita más archivos (de configuración), sólo tiene que solicitarlos. Gracias.