Localhost se niega a conectarse después de actualizar a Sierra OS

He descargado e instalado apache, php, phpmyadmin, mysqla través de macports. Todo funcionaba bien antes de actualizar a macOS Sierra.

Después de la actualización, siempre que intento acceder a localhost, aparece el siguiente mensaje de error: "No se puede acceder a este sitio, localhost se negó a conectarse".

Esto está sucediendo aunque mi configuración en el apache http.confarchivo sigue siendo la misma.

También estoy proporcionando el contenido del archivo de hosts.

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost

¿Algún consejo?

¿Ha verificado que todos esos servicios se están ejecutando?
si ejecuto el comando "sudo port load apache2", obtengo la siguiente respuesta del terminal "/opt/local/etc/LaunchDaemons/org.macports.apache2/org.macports.apache2.plist: el servicio ya está cargado", así que Estoy bastante seguro de que apache se está ejecutando.
Agregue el contenido de su archivo /etc/hosts. ¿Funciona 127.0.0.1? Quizás relacionado: apple.stackexchange.com/questions/252466/…
¿Ejecutaste una prueba de configuración para asegurarte de que todo está bien? Tuve un problema similar con la instalación estándar de Apache, algo en la actualización rompió uno de los paquetes dependientes.
Acabo de hacer la prueba de configuración y los resultados fueron los siguientes: "httpd: apr_sockaddr_info_get() falló para el nombre de usuario-MacBook-Pro.local" "httpd: no se pudo determinar de manera confiable el nombre de dominio completo del servidor, usando 127.0.0.1. Establezca el ' ServerName' globalmente para suprimir este mensaje". Así que seguí este tutorial y " mdshaonimran.wordpress.com/2011/10/17/… " y el error desapareció, pero sigo recibiendo el mensaje de rechazo cuando intento visitar localhost.
¡De nuevo, cada problema de actualización de Mac! ahora 10.12.5 nada aquí funcionó para mí, no se puede conectar a la contraseña de errores de base de datos es correcta ... pma tampoco funciona, apache parece estar bien ...
Desafortunadamente, este problema vuelve a ocurrir al actualizar a High Sierra

Respuestas (5)

Resolví esto comentando esta línea de mi httpd.conf:

LoadModule unique_id_module modules/mod_unique_id.so

No estoy muy familiarizado con mod_unique_id , pero no parece crítico tenerlo en mi servidor de desarrollo local (su situación podría ser diferente).

módulo_id_único

Este módulo proporciona un token mágico para cada solicitud que se garantiza que es único en "todas" las solicitudes en condiciones muy específicas. El identificador único es incluso único en varias máquinas en un grupo de máquinas configurado correctamente. La variable de entorno UNIQUE_ID se establece en el identificador de cada solicitud. Los identificadores únicos son útiles por varias razones que están fuera del alcance de este documento.

Después de actualizar a macOS Sierra, Apache httpd mueve el antiguo httpd.confy httpd.conf.pre-updatecoloca el nuevo. Para que el servidor local funcione, intente el siguiente procedimiento:

cd /etc/apache2/  
sudo mv httpd.conf httpd.conf-afterupdate  
sudo mv httpd.conf.pre-update httpd.conf  
sudo apachectl configtest  
sudo apachectl restart  

Luego prueba:

curl -I -L localhost
sudo apachectl configtest me dio todos los errores! Salvavidas, gracias.
¡Muchas gracias por la respuesta! Por cierto, ¿cómo descubriste esta solución? No obtuve ningún error con configtest (¿se suponía que debía obtener uno?) Y, sinceramente, no sabría por dónde comenzar a buscar una respuesta.

Yo tuve el mismo problema. Corrí sudo apachectl configtesty recibí el mensaje:

AH00526: error de sintaxis en la línea 6 de /private/etc/apache2/other/default-ssl.conf:

Comando no válido 'SSLEngine', quizás mal escrito o definido por un módulo no incluido en la configuración del servidor

Acabo de cambiar el nombre del archivo de configuración SSL predeterminado para que ya no se cargue. Un reinicio de apache más tarde, todo volvió.

Tuve el mismo problema y lo resolví comentando mod_proxy_hckeck en httpd.conf

LoadModule proxy_hcheck_module libexec/apache2/mod_proxy_hcheck.so

EDITADO: encontré en apache.org que este módulo requiere mod_watchdog, pero este módulo está comentado, así que simplemente comente mod_proxy_hcheck o descomente mod_watchdog LoadModule watchdog_module libexec/apache2/mod_watchdog.so

¡espero que funcione!

Comentar mod_proxy_hcheck también me lo resolvió. Antes de eso, Apache fallaría silenciosamente al vincularse a su puerto.

Yo estaba teniendo el mismo problema. Afortunadamente pude resolver el problema por accidente. Después de un error de carga de Suitcase Fusion, me di cuenta de que el problema no se debe a apache. El problema es el archivo principal /etc/.

Reemplazar el archivo de hosts

Puede descargar un archivo host predeterminado de Mac OS desde http://cs.us.extensis.com/HostsFile/hosts.zip .

Descomprima el archivo de hosts; no debe tener extensión de archivo En el Finder, vaya a Ir > Ir a la carpeta Para "Ir a la carpeta" ingrese "/etc" y presione Entrar Arrastre el archivo hosts a la carpeta etc; ingrese un nombre de usuario y contraseña de administrador de Mac OS cuando se le solicite Una vez que haya colocado el archivo de hosts en la carpeta etc:

Abra la aplicación Terminal Ingrese el siguiente comando y presione Entrar: sudo chmod 644 /etc/hosts Ingrese su contraseña de Mac OS y presione Entrar Es posible que vea viñetas, íconos de teclas o nada mientras escribe su contraseña de Mac OS en la ventana Terminal, según en la versión de Mac OS que está utilizando. Esto es normal.

Limpia tu caché DNS de Mac OS

En la ventana Terminal, ingrese el siguiente comando y presione Enter: sudo killall -HUP mDNSResponder Reinicie su Mac Causa

Suitcase Fusion usa el archivo de hosts para encontrar y conectarse al tipo de núcleo usando la dirección de loopback (127.0.0.1 o localhost). Si el archivo de hosts no está presente, o la entrada para 127.0.0.1 apunta a un nombre que no es localhost, verá uno de los mensajes de error que se muestran arriba.

Si Suitcase Fusion no puede resolver localhost a 127.0.0.1, obtendrá el primer mensaje de error; si Type Core no puede resolver localhost en 127.0.0.1, recibirá el segundo mensaje de error.

Si el archivo de hosts se ha modificado, se puede eliminar al actualizar a una nueva versión de Mac OS. Las aplicaciones de terceros o las utilidades de red también pueden cambiar incorrectamente la entrada localhost. Para obtener más información, consulte Cómo editar el archivo de hosts en Mac OS X con Terminal.