Un servidor local de desarrollo y pruebas es una de las herramientas más importantes en el arsenal de cualquier desarrollador de WordPress. Estas soluciones probadas te permiten construir un sitio web de forma rápida y sencilla, sin el riesgo de estropear un servidor web en vivo. Sin embargo, de vez en cuando pueden surgir problemas.
MAMP es una popular herramienta de desarrollo local para construir sitios web de WordPress, pero ocasionalmente puede ser objeto de problemas de localhost. Por suerte, si te encuentras con el mensaje común «localhost refused to connect», hay pasos que puedes seguir para resolver este error.
En este artículo, exploraremos qué es el error localhost de MAMP, y qué causa el problema. A continuación, compartiremos siete formas de resolver este problema de conexión. Empecemos.
Una Introducción a MAMP (Y el Error «Localhost Refused to Connect»)
MAMP es una pila de soluciones compuesta por software de código abierto y propietario. El nombre MAMP deriva de sus componentes: macOS, Apache, PHP, MySQL o MariaDB, y Perl o Python. Sin embargo, MAMP no se limita a estos elementos. Por ejemplo, puedes optar por utilizar Nginx en lugar de Apache.
MAMP instala un entorno de servidor local en tu ordenador Windows o macOS, y se utiliza habitualmente para desarrollar sitios web dinámicos. MAMP también es bastante utilizado por los desarrolladores que trabajan con sistemas de gestión de contenidos (CMS) como WordPress:
Con MAMP, puedes configurar un entorno de desarrollo local en tu ordenador. Esto elimina el tiempo, el coste y la complejidad a menudo asociados con la configuración de un servidor web independiente. En otras palabras, es ideal para probar rápidamente proyectos, o para desarrollar sitios web sin el riesgo de estropear un servidor en vivo.
Sin embargo, es posible que aún encuentres problemas al utilizar MAMP. Cuando intentas acceder a tu localhost, es posible que veas el siguiente mensaje de error «localhost rechazado para conectar».
Esto suele ocurrir cuando hay un problema con la configuración del puerto. Por ejemplo, otro servicio puede estar bloqueando el puerto que MAMP está tratando de utilizar, o tal vez estás tratando de acceder al puerto equivocado por completo. También puedes encontrarte con este error cuando MAMP no consigue iniciar el servidor.
Cómo Resolver el Error «Localhost Refused to Connect» de MAMP (7 Métodos)
MAMP es una solución popular para desarrollar y probar proyectos en un entorno local. Sin embargo, si no puedes conectarte a localhost, te costará sacar provecho de esta herramienta. Si te encuentras con el error «localhost refused to connect», aquí tienes siete soluciones que deberían ayudarte a reconectar y volver a trabajar.
1. Prueba con Otro Navegador Web
Es posible que tus problemas de conexión sean específicos del navegador. Cada navegador tiene una configuración y un comportamiento únicos.
En particular, algunos navegadores redirigen automáticamente al equivalente del Protocolo de Transferencia de Hipertexto Seguro (HTTPS) de cualquier dirección web HTTP. Si no tienes activada la capa de conexión segura (SSL) en tu proyecto web, esta redirección puede provocar un error de localhost.
Antes de pasar a soluciones más complejas, puedes intentar acceder a tu localhost a través de un navegador alternativo. Esto puede ayudarte a comprobar si el problema reside en MAMP o en el navegador que estás utilizando.
Si no encuentras el error de localhost en un navegador alternativo, esto sugiere que el problema es específico del navegador. En este caso, te recomendamos que compruebes los ajustes de tu navegador para ver si hay alguna configuración que pueda causar problemas con MAMP. Por ejemplo, podrías descubrir que tu navegador está redirigiendo las peticiones HTTP a HTTPS por defecto.
Los pasos para resolver este problema de redirección variarán en función de lo que utilices. Por ejemplo, los usuarios de Chrome pueden desactivar esta redirección dirigiéndose a chrome://net-internals/#hsts:
A continuación, desplázate hasta la siguiente sección, Eliminar políticas de seguridad de dominio, e introduce tu dominio localhost. A continuación, puede seleccionar Eliminar, lo que debería desactivar la redirección de Chrome para su localhost.
2. Permitir Conexiones Entrantes
Si no puedes acceder al servidor web a través de localhost, es posible que tu cortafuegos esté bloqueando la conexión. A menudo puedes resolver este problema modificando la configuración de tu cortafuegos para permitir las conexiones entrantes para el puerto al que MAMP está intentando acceder. Alternativamente, puedes permitir las conexiones para toda la aplicación MAMP.
Si eres usuario de macOS, puedes editar la configuración de tu cortafuegos accediendo a Apple > Preferencias del Sistema… > Seguridad y Privacidad. A continuación, puedes seleccionar la pestaña Cortafuegos:
Para habilitar las conexiones entrantes para toda la aplicación MAMP, selecciona Opciones de Cortafuegos. A continuación, haz clic en el icono +, selecciona MAMP y elige Añadir. MAMP se añadirá a la lista de aplicaciones permitidas.
En este punto, comprueba que la aplicación MAMP está configurada para Permitir conexiones entrantes y, a continuación, haz clic en Aceptar. Tu cortafuegos ahora permitirá todas las conexiones entrantes para MAMP.
Si utilizas Windows Defender, deberías haber recibido una notificación del cortafuegos cuando instalaste MAMP. Sin embargo, puedes cambiar los permisos de tu cortafuegos de Windows en cualquier momento, navegando a Inicio > Configuración > Actualización y Seguridad > Seguridad de Windows. Entonces puedes seleccionar Cortafuegos & Protección de Redes para hacer los cambios necesarios en la configuración de tu cortafuegos.
3. Comprueba la Raíz del Documento de MAMP
Cuando accedes a tu localhost, MAMP muestra el contenido de tu raíz de documentos. Por defecto, se encuentra en /Applications/MAMP/htdocs, y contiene un archivo index.html o index.php.
Si mueves o borras este archivo de índice, MAMP no tendrá nada que cargar. Si editas el archivo de índice de forma incorrecta, MAMP también puede tener problemas para mostrar cualquier contenido. Esto puede causar una serie de errores, incluyendo el mensaje «localhost refused to connect».
Puedes determinar si has modificado o movido inadvertidamente esta importante carpeta dirigiéndote a /Applications/MAMP/htdocs/. Si no contiene un archivo index.html o index.php, es probable que eso contribuya a tus errores de localhost.
También vale la pena comprobar si MAMP está cargando el contenido desde la carpeta correcta. Si estás usando la versión gratuita de MAMP, puedes comprobar la ubicación del documento raíz en la ventana principal de MAMP:
Si estás usando MAMP Pro, este proceso es ligeramente diferente. Puedes verificar la ubicación de la raíz seleccionando Hosts > General. Esta pantalla mostrará la ruta de tu archivo Document Root:
Si sospechas que puede haber un problema con la raíz de tu documento, puedes simplemente seleccionar Abrir en seguido de tu gestor de archivos favorito. Esto te llevará directamente a la raíz del documento, donde podrás inspeccionar el contenido de la carpeta y hacer los cambios necesarios.
4. Cambiar la Configuración del Puerto
Los programas de servidor como MAMP requieren acceso exclusivo a un puerto de red específico. Esto permite que varios programas se ejecuten en la misma máquina.
Cada servidor tiene un puerto por defecto. El servidor web Apache suele utilizar el puerto 80, mientras que el servidor de base de datos MySQL utiliza el puerto 3306. Por defecto, MAMP utiliza los puertos 8888, 8889 y 7888. Sin embargo, estos puertos pueden estar ya en uso por algún otro programa o pieza de software.
En este caso, puedes configurar MAMP para que utilice un puerto alternativo. Si estás usando la versión gratuita, puedes comprobar la configuración del puerto navegando a MAMP > Preferencias. A continuación, selecciona la pestaña Puerto:
Si estás usando MAMP Pro, encontrarás estas opciones en la pestaña Puertos y Usuario. Así podrás ver los puertos exactos que utiliza MAMP:
Si MAMP ya está usando un puerto alternativo, puedes intentar restaurar la configuración por defecto seleccionando MAMP por defecto. Si eres un usuario Pro, puedes hacer clic en el botón Establecer puertos por defecto de MAMP. Esto restablecerá los puertos para Apache, Nginx y MySQL a 8888, 7888 y 8889.
Alternativamente, MAMP tiene un botón 80 y 3306, que ajustará los puertos a los valores más utilizados. Después de modificar la configuración del puerto, puedes obtener resultados positivos escribiendo el nuevo número de puerto directamente en la barra de direcciones de tu navegador, como en http://<localhost>:8888/.
Si sigues encontrando el error de localhost, puedes intentar configurar MAMP para que utilice un número de puerto completamente aleatorio, como el 8814. A continuación, puedes escribir esta dirección directamente en tu navegador web (http://localhost:8814/) para ver si se resuelve el problema de localhost.
5. Comprueba Que Tu Servidor Web Apache Está Funcionando
Apache es uno de los servidores web más utilizados. Tanto MAMP como MAMP Pro ofrecen esta opción. Sin embargo, si el servidor Apache no se está ejecutando, tendrás problemas para conectarte a tu localhost.
Puedes ver si tu servidor Apache está en funcionamiento echando un vistazo al botón Detener/Inicio en la esquina superior derecha de la aplicación MAMP. Si el servidor web Apache está activo, este botón estará verde. Si eres un usuario de MAMP Pro, puedes realizar la verificación seleccionando «Apache» en el menú de la izquierda:
Los usuarios de MAMP Pro también pueden ver más información sobre sus servidores Apache seleccionando Info o Estado. Si el servidor está funcionando, ambos botones abrirán una pestaña con más información sobre la configuración de Apache.
Si tu servidor web Apache no está funcionando, es posible que otro servicio MySQL esté utilizando el mismo puerto. Si sospechas que este es el caso, una solución es cerrar todos los procesos httpd en tu máquina. Los pasos exactos para cerrar los procesos httpd variarán dependiendo de tu sistema operativo.
Los usuarios de Mac pueden identificar y salir de los procesos httpd utilizando el Monitor de Actividad. En la barra de herramientas del Monitor de Actividad, selecciona Ver > Todos los procesos:
En el campo de búsqueda, escribe «httpd». Selecciona cada resultado de la lista y, a continuación, haz clic en el icono de Detener de la esquina superior izquierda del Monitor de actividad:
Después de cerrar todos los procesos de httpd, reinicia MAMP y trata de reiniciar el servidor web Apache.
Si esto no resuelve tu problema, existe la posibilidad de que tu archivo httpd.conf.temp esté dañado. Algunos usuarios de MAMP Pro han reportado resultados positivos después de renombrar este archivo.
En tu máquina local, navega hasta ~/Library/Application Support/appsolute/MAMP PRO/templates. A continuación, puedes cambiar el nombre de httpd.conf.temp por http.conf.temp.bak. Reinicia MAMP, y comprueba si tu servidor Apache está ahora funcionando correctamente.
6. Reinicia el Servidor Web Apache
También puedes resolver el error «localhost refused to connect» reiniciando el servidor web Apache. Para detener el servidor, inicia el Terminal de tu Mac navegando a Aplicaciones > Utilidades > Terminal.
Alternativamente, los usuarios de Windows pueden lanzar la línea de comandos. A continuación, ejecuta el siguiente comando: «sudo apachectl stop». En la ventana del Terminal o Línea de comandos, deberías ver el siguiente mensaje: Operación en curso.
Si has modificado la configuración de los puertos de MAMP, es una buena idea restaurarlos a sus valores por defecto (80/3306). Puedes ir a MAMP > Preferencias… > Puertos (MAMP), o Puertos y Usuario (MAMP Pro). En la ventana resultante, selecciona MAMP por defecto.
A continuación, vuelve a la Terminal o Línea de comandos y ejecuta el siguiente comando «sudo apachectl restart». A continuación, puedes reiniciar el servidor web Apache seleccionando el icono de Inicio/Detener en la esquina superior derecha de MAMP.
7. Reinstalar MAMP
Por último, pero no por ello menos importante, puedes resolver este problema desinstalando y volviendo a instalar MAMP. Solo ten en cuenta que la desinstalación del programa eliminará todas las bases de datos ubicadas en tu carpeta db.
Si estás usando MAMP Pro, esa carpeta se encuentra en /Library/Application Support/appsolute/MAMP PRO/db. Si quieres conservar esta información, puedes mover los archivos a una ubicación segura antes de desinstalar MAMP.
También recomendamos anotar los números de puerto de Apache, MySQL y DynDNS, ya que algunos sistemas de gestión de contenidos (CMS) dependen de los puertos. Puedes encontrar esta información seleccionando Hosts en el menú de la izquierda de MAMP, y luego abriendo la pestaña General.
Para desinstalar MAMP Pro, selecciona MAMP PRO > Desinstalar MAMP Pro. Si se te pide, introduce tu nombre de usuario y contraseña de administrador:
Después de desinstalar MAMP, verás el siguiente mensaje: MAMP Pro ha sido desinstalado con éxito. Ahora puedes dirigirte a la carpeta /Applications de tu ordenador y eliminar la carpeta MAMP.
Ahora que has eliminado por completo MAMP, es el momento de reinstalarlo. Puedes descargar una copia nueva de MAMP desde el sitio web oficial, y luego instalar la aplicación de forma normal.
Después de instalar con éxito MAMP, es posible que quieras restaurar tus bases de datos. En tu administrador de archivos favorito, navega hasta /Library/Application Support/appsolute/MAMP PRO/db. Entonces puedes arrastrar tus archivos db a esa carpeta.
Resumen
El entorno de servidor local de MAMP puede ser muy valioso para construir y probar tu sitio web. Sin embargo, si te encuentras con el error «localhost refused to connect», tendrás que resolverlo antes de seguir adelante.
Afortunadamente, si te encuentras con este problema, hay medidas que puedes tomar para resolverlo. Te recomendamos que pruebes si el problema es específico del navegador, intentando acceder a tu proyecto a través de un navegador web alternativo. También puedes obtener resultados positivos modificando la configuración de tu cortafuegos y la configuración de puertos de MAMP.
¿Tienes alguna pregunta sobre cómo resolver el error «localhost refused to connect»? Compártelas en la sección de comentarios más abajo.