5 formas de arreglar el error “la página localhost ha rechazado la conexión.”
Entre los diferentes errores de conexión de red que puedes encontrar se encuentra “la página localhost ha rechazado la conexión.”.
Cuando intentas conectarte a una dirección IP, normalmente intentas conectarte a otro ordenador. Sin embargo, dado que localhost utiliza la red de direcciones de bucle invertido, conectarte a él significa que estás estableciendo una conexión con tu propio ordenador.
Por eso, muchos desarrolladores y administradores de red utilizan localhost para probar programas o sitios que aún están en desarrollo. De este modo, se reduce el riesgo de dañar un sitio en funcionamiento.
Por lo tanto, cuando no puedes acceder a localhost, no podrás acceder a tu proyecto en un entorno local.
Hay varias causas para este error, como se muestra en la siguiente tabla. Además, ten en cuenta que debes estar en tu máquina local para acceder a localhost (no puedes acceder a él desde ningún otro dispositivo).
Código de error | Localhost rechazo la conexión |
Tipo de error | Navegador/cortafuegos |
Variaciones del error | ERR_CONNECTION_REFUSED127.0.0.1 rechazó la conexiónNo se puede acceder a este sitio. Localhost rechazó la conexión. |
Causas del error | Servidor bloqueado por el cortafuegosEl servidor se está ejecutando en un puerto incorrectoEl servidor Apache no funciona correctamenteEs necesario reconfigurar los ajustes del navegador |
Tabla de Contenidos
¿Qué es el error “la página localhost ha rechazado la conexión.”?
Es un error común que puede ocurrir cuando se trabaja en un equipo local. El localhost simula un servidor web que se ejecuta en tu ordenador. Cuando aparece el error “localhost ha rechazado la conexión”, es probable que se deba a una configuración incorrecta del puerto. Otras causas comunes son permisos insuficientes y que el servidor web Apache no funcione correctamente.
5 métodos para solucionar el error “la página localhost ha rechazado la conexión.”
A continuación te mostramos cinco métodos para solucionar el error “localhost ha rechazado la conexión”, sin ningún orden en particular.
1. Desactiva temporalmente tu cortafuegos
Un firewall o cortafuegos es un sistema de seguridad que supervisa y filtra tu tráfico, bloqueando posibles amenazas. Aunque es una herramienta importante, los protocolos de detección pueden funcionar de forma inexacta en ocasiones.
Un firewall puede bloquear incorrectamente páginas web seguras o conexiones entrantes. Por lo tanto, si estás desarrollando un sitio web y necesitas acceder a su versión alojada localmente, es mejor desactivar temporalmente el firewall. De esta forma, tu sitio de prueba no se bloqueará.
Recuerda volver a activar el cortafuegos inmediatamente una vez que el sitio web esté activo y ya no veas el mensaje de error “la página localhost ha rechazado la conexión.” en el servidor local.
A continuación se indican los pasos para desactivar el cortafuegos en Mac, Windows y Linux, respectivamente.
Cómo desactivar el cortafuegos en Mac
- Ve a Preferencias del sistema.
- Selecciona Seguridad y privacidad.
- Selecciona la pestaña Firewall para ver la configuración completa del firewall.
- Haz clic en el icono del candado y, a continuación, introduce tu nombre de usuario y contraseña.
- Aparecerá un mensaje informándote de que, si desactivas el cortafuegos, aceptarás todas las conexiones entrantes, incluidas aquellas que puedan contener recursos no autorizados. Haz clic en el botón Desactivar cortafuegos.
- Haz clic en el candado para evitar que se realicen más cambios en esta configuración sin tu permiso.
Ten en cuenta que los pasos para desactivar el cortafuegos en Mac pueden variar ligeramente en función de la versión de macOS que tengas.
Cómo desactivar el firewall en Windows
Hay dos formas de desactivar el cortafuegos en Windows 10, 8, 7 y Vista: a través del panel de control o del símbolo del sistema.
Estos son los pasos para desactivar el firewall mediante el panel de control:
- Abre el panel de control y, a continuación, ve a Sistema y seguridad -> Firewall de Windows Defender.
- Selecciona Activar o desactivar el Firewall de Windows Defender.
- Desactiva ambos cortafuegos en la configuración de redes privadas y públicas.
- Haz clic en el botón Aceptar para aplicar los cambios.
Si la opción no se puede seleccionar, significa que la configuración del firewall está controlada por otro programa de seguridad. Si es así, es posible que quieras desinstalar primero esa aplicación.
Mientras tanto, estos pasos se aplican para desactivar el cortafuegos a través del símbolo del sistema:
- Abre el símbolo del sistema como administrador.
- Escribe el siguiente comando:
netsh advfirewall set allprofiles state off
Cómo desactivar el firewall en Linux
Los pasos para detener y desactivar el firewall varían según tu distribución de Linux.
Si utilizas Ubuntu o Debian, tu firewall debería estar gestionado por ufw. Si utilizas CentOS o RHEL, la herramienta de gestión del firewall predeterminada será firewalld.
¡Importante! Es vital detener el firewall antes de desactivarlo. De lo contrario, se producirán errores durante el proceso.
Para desactivar el firewall en ufw, sigue estos pasos:
- Detén ufw con este comando:
sudo ufw disable
- Una vez que el cortafuegos se haya detenido correctamente, ejecuta un comando para desactivar el servicio ufw al iniciar el sistema.
sudo systemctl disable ufw
- Comprueba que ufw está desactivado con este comando:
sudo ufw status
sudo systemctl status ufw
- Vuelve a habilitar ufw.
sudo systemctl enable ufw sudo ufw enable ## verify that ufw started ## sudo ufw status
Como alternativa, estos son los pasos para detener y desactivar el cortafuegos en firewalld:
- Detén firewalld con el siguiente comando.
sudo systemctl stop firewalld
- Desactiva firewalld al iniciar el sistema con este comando.
sudo systemctl disable firewalld sudo systemctl mask --now firewalld
- Simplemente introduce este comando para verificar si el firewalld se ha desactivado.
sudo systemctl status firewalld
- Ejecuta los siguientes comandos para volver a habilitar firewalld.
sudo systemctl unmask --now firewalld sudo systemctl enable firewalld sudo systemctl start firewalld ## verify that the firewalld started ## sudo firewall-cmd --state
2. Vacía tu DNS
La caché DNS almacena datos de los sitios web que visitas, por lo que estas páginas web se cargarán más rápido la próxima vez que accedas a ellas.
Sin embargo, si el DNS contiene demasiados registros, es posible que no funcione correctamente.
Para solucionarlo, vacía el DNS para borrar los registros:
- Abre el símbolo del sistema escribiendo cmd en la barra de búsqueda junto al menú de inicio.
- Introduce este comando:
ipconfig /flushdns
- Comprueba si el problema de conexión rechazada 127.0 0.1 ha desaparecido.
3. Conéctate con el puerto especificado
El número de puerto predeterminado para el servidor web es 80. Si intentas acceder escribiendo localhost en tu navegador, lo que te dirigirá a localhost:80, pero resulta que tu servidor web no está configurado para utilizar el puerto predeterminado, aparecerá el error localhost o el mensaje 127.0 0.1 denegada la conexión.
Sin embargo, es posible que el puerto 80 esté siendo utilizado por otra aplicación en tu ordenador. Por ejemplo, si Skype lo está utilizando en ese momento, no podrás ejecutar el servidor Apache en el mismo puerto simultáneamente.
Para resolver este problema, primero comprobemos si el puerto 80 está libre. Para ello, utilizaremos XAMPP.
XAMPP es una solución de servidor web que se utiliza para crear sitios web sin conexión en un servidor web local. Es una herramienta multiplataforma, por lo que funciona en Windows, Mac y Linux. Se utiliza habitualmente para instalar WordPress en un ordenador local.
Estos son los pasos para comprobar el número de puerto libre en Windows y Linux. En Mac será ligeramente diferente.
- Haz clic en el menú Inicio para iniciar XAMPP.
- Haz clic en el botón Netstat situado en la parte derecha del panel de control.
- Verás todos los puertos utilizados en tu ordenador. Comprueba si el puerto 80 está libre o si lo está utilizando otra aplicación.
- Si el puerto 80 ya está siendo utilizado por otra aplicación, elige un número de puerto libre, por ejemplo, el puerto 8080.
A continuación, procedamos a conectarnos con el número de puerto correcto utilizando el comando listen.
El comando listen es necesario para indicar a Apache HTTPd que escuche solo direcciones IP o puertos específicos. Si este comando no está presente en el archivo de configuración, tu servidor no se iniciará.
Estos son los pasos para cambiar el puerto de Apache en XAMPP:
- Haz clic en el menú Inicio para iniciar XAMPP.
- Verás el icono de XAMPP en la bandeja del sistema de la barra de tareas. Haz doble clic en él.
- Aparecerá la ventana del panel de control de XAMPP. Mostrará una lista de todos los servicios que se están ejecutando actualmente.
- Haz clic en el botón Detener junto a Apache.
- Abre el explorador de archivos y busca el archivo httpd.conf en la carpeta config. Si utilizas Windows, estará en el directorio C:\xampp\apache\conf. Si utilizas Linux, estará en bin/apache. En Mac, la ruta será Aplicaciones/XAMPP/xamppfiles/etc/httpd.conf.
- Ábrelo con el Bloc de notas o cualquier otro editor de texto disponible. A continuación, busca estas líneas dentro del archivo:
Listen 80 ServerName localhost:80
- Si el puerto 80 está libre, solo tienes que asegurarte de que el número de puerto del comando Listen coincide con el número de puerto del localhost. Si otra aplicación está utilizando el puerto 80, sustitúyelo por un número de puerto disponible. En este ejemplo, lo cambiaremos al puerto 8080.
Listen 8080 ServerName localhost:8080
- Guarda el archivo. Se te solicitarán privilegios administrativos, selecciona Si.
- Vuelve a abrir el panel de control de XAMPP y, a continuación, inicia el servidor web Apache.
- Accede a http://localhost:8080 o https://127.0.0.1:8080/ para comprobar si el localhost funciona.
Si utilizas WAMP, una solución integrada para el sistema operativo Windows, sigue estos pasos para cambiar el puerto en ejecución.
- Haz clic con el botón derecho en la barra de tareas y selecciona Administrador de tareas.
- Haz clic en Finalizar tarea para cualquier instancia de WAMP que siga ejecutándose.
- A continuación, abre el explorador de archivos y navega hasta la carpeta config en C:\wamp\apache2\conf.
- Busca el archivo de configuración HTTPD. Ábrelo con un editor de texto como el Bloc de notas.
- Busca estas líneas dentro del archivo:
Listen 80 ServerName localhost:80
- Si el puerto 80 está libre, solo tienes que asegurarte de que el número de puerto del comando listen coincide con el número de puerto del localhost. Si el puerto 80 ya está siendo utilizado por otra aplicación, sustituye el número por un puerto disponible.
Listen 8080 ServerName localhost:8080
- Guarda el archivo.
- Vuelve a abrir WAMP para ver si sigues obteniendo el mismo error.
4. Asegúrate de que Apache se está ejecutando
Si tu servidor web Apache no está en ejecución, no podrás acceder a localhost.
Para comprobar el estado de Apache, el comando variará en función de la distribución que utilices.
Este es el comando para Debian o Ubuntu:
$ sudo systemctl status apache2
Y este es el comando para CentOS/RHEL/Fedora:
# systemctl status httpd
El resultado de esta comprobación de estado indicará si el servidor está en funcionamiento o detenido.
Si te indica que el servidor está detenido, intenta solucionar el problema reiniciándolo con el siguiente comando.
Para Debian y Ubuntu:
sudo systemctl restart apache2
Para CentOS/RHEL/Fedora:
# systemctl restart httpd
El resultado del comando de reinicio será similar al siguiente:
* Restarting web server apache2 [ OK ]
Si el intento de reinicio falla, aparecerá un mensaje de error. El mensaje puede variar en función de la distribución que hayas elegido, pero será similar a este:
apache2: unrecognized service
Failed to restart apache2.service: Unit apache.service failed to load: No such file or directory.
Si ves estos mensajes de error, intenta reinstalar el servicio. Una vez que estés seguro de que el servidor web está instalado correctamente, reinícialo con el comando correspondiente.
5. Revisa la configuración del navegador
La configuración de tu navegador también puede provocar el error 127.0 0.1 “localhost ha rechazado la conexión”, ya que cada navegador web tiene una configuración y características diferentes.
Por ejemplo, cuando introduces una dirección web HTTP, algunos navegadores te redirigen automáticamente a su equivalente HTTPS. Sin embargo, si ese sitio tiene un certificado SSL no válido o no tiene ninguno, aparecerá el mensaje de error.
Si utilizas el navegador Chrome, sigue estos pasos:
- Escribe chrome://net-internals/#hsts en la barra de direcciones de tu navegador.
- Localiza “Eliminar políticas de seguridad del dominio” y escribe localhost.
- Reinicia el navegador.
Diferencia entre “ERR_CONNECTION_REFUSED” y “ERR_CONNECTION_TIMEOUT”
Al intentar acceder a localhost, es posible que encuentres dos errores potenciales: ERR_CONNECTION_REFUSED y ERR_CONNECTION_TIMEOUT. Ambos están estrechamente relacionados, pero requieren soluciones diferentes.
El error localhost “ERR_CONNECTION_REFUSED” indica que el servidor ha rechazado el intento de conexión, mientras que “ERR_CONNECTION_TIMEOUT” indica que no ha ocurrido nada y que el cliente sigue esperando una respuesta.
Por lo tanto, para resolver el problema localhost “ERR_CONNECTION_REFUSED”, debes comprobar el cortafuegos, ya que es el que rechaza los paquetes de datos. También deberás consultar la directiva Listen en el archivo httpd.conf y asegurarte de que está configurada correctamente.
Mientras tanto, para resolver “ERR_CONNECTION_TIMEOUT” en Chrome, deberás revisar la configuración de tu conexión, ya que este error significa que el servicio no funciona como debería o no está instalado correctamente.
Conclusión
“la página localhost ha rechazado la conexión.” es un error de conexión de red que puede aparecer cuando trabajas en un proyecto en tu servidor web local.
Se activa si el cortafuegos bloquea tu servidor o si utilizas un puerto incorrecto. El error localhost también puede producirse si tu servidor web Apache o el navegador Chrome no están configurados correctamente.
Hay cinco métodos para solucionar este error:
- Desactiva temporalmente el firewall: anula el firewall para que no marque el proyecto en tu localhost como malicioso y bloquee su acceso.
- Vacía el DNS: borra los datos existentes del navegador.
- Conéctate con el puerto especificado: comprueba si el puerto en ejecución del servidor web Apache es el puerto 80 o un número de puerto específico para localhost.
- Asegúrate de que Apache se está ejecutando: comprueba también que el servidor web Apache está instalado correctamente.
- Revisa la configuración del navegador: habilita las conexiones a sitios sin certificado SSL, como tu sitio de prueba.
Esperamos que este artículo te ayude a resolver el error “localhost refused to connect”.
“la página localhost ha rechazado la conexión.” – Preguntas frecuentes
Esta sección cubre algunas de las preguntas más comunes sobre el error “localhost ha rechazado la conexión”.
¿Cuál es la alternativa a localhost?
Una alternativa al uso de localhost para el desarrollo local es utilizar la dirección IP de tu ordenador como host. Puedes encontrar tu dirección IP en las preferencias del sistema o escribiendo ipconfig en el símbolo del sistema de Windows o ifconfig en la terminal de Mac o Linux.
¿Qué es una dirección IP localhost?
Una dirección IP localhost hace referencia al ordenador que está utilizando el usuario en ese momento.
Es la dirección IP de la interfaz de red de bucle invertido, a la que normalmente se le asigna la dirección IP 127.0.0.1.
Los usuarios utilizan esta dirección IP para acceder a los servicios de red del propio ordenador sin conectarse a una red externa.