Localhost verweigert die Verbindung nach dem Upgrade auf Sierra OS

Ich habe apache, php, phpmyadmin, mysqlüber Macports heruntergeladen und installiert. Vor dem Upgrade auf macOS Sierra hat alles einwandfrei funktioniert.

Wenn ich nach dem Upgrade versuche, auf localhost zuzugreifen, erhalte ich die folgende Fehlermeldung: "Diese Site kann nicht erreicht werden, localhost hat die Verbindung verweigert."

Dies geschieht, obwohl meine Einstellungen in der apache http.confDatei gleich bleiben.

Ich stelle auch den Inhalt der Hosts-Datei bereit

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost

Irgendein Rat?

Haben Sie überprüft, ob alle diese Dienste tatsächlich ausgeführt werden?
Wenn ich den Befehl "sudo port load apache2" ausführe, erhalte ich die folgende Antwort vom Terminal "/opt/local/etc/LaunchDaemons/org.macports.apache2/org.macports.apache2.plist: Service bereits geladen", also i Ich bin mir ziemlich sicher, dass Apache läuft.
Bitte fügen Sie den Inhalt Ihrer /etc/hosts-Datei hinzu. Funktioniert 127.0.0.1? Vielleicht verwandt: apple.stackexchange.com/questions/252466/…
Hast du einen Konfigurationstest gemacht, um sicherzugehen, dass alles in Ordnung ist? Ich hatte ein ähnliches Problem mit der Standardinstallation von Apache, etwas im Update hat eines der abhängigen Pakete beschädigt.
Ich habe gerade den Konfigurationstest durchgeführt und die Ergebnisse waren die folgenden: „httpd: apr_sockaddr_info_get() failed for username-MacBook-Pro.local“ „httpd: Konnte den vollständig qualifizierten Domänennamen des Servers nicht zuverlässig ermitteln, wobei 127.0.0.1 verwendet wurde. ServerName'-Anweisung global, um diese Meldung zu unterdrücken". Also folgte ich diesem Tutorial und " mdshaonimran.wordpress.com/2011/10/17/… " und der Fehler verschwand, aber ich erhalte immer noch die Ablehnungsnachricht, wenn ich versuche, localhost zu besuchen.
Wieder Probleme mit jedem Mac-Update! jetzt 10.12.5 nichts hier hat bei mir funktioniert, kann keine Verbindung zu Datenbankfehlern herstellen, Passwort ist korrekt..pma funktioniert auch nicht, Apache scheint in Ordnung zu sein..
Leider tritt dieses Problem beim Upgrade auf High Sierra erneut auf

Antworten (5)

Ich habe das gelöst, indem ich diese Zeile aus meinem auskommentiert habe httpd.conf:

LoadModule unique_id_module modules/mod_unique_id.so

Ich bin mit mod_unique_id nicht sehr vertraut , aber es scheint nicht kritisch zu sein, es auf meinem lokalen Entwicklungsserver zu haben (Ihre Situation könnte anders sein).

unique_id_module

Dieses Modul stellt für jede Anfrage ein magisches Token bereit, das unter ganz bestimmten Bedingungen garantiert über "alle" Anfragen hinweg eindeutig ist. Die eindeutige Kennung ist sogar über mehrere Maschinen in einem ordnungsgemäß konfigurierten Maschinencluster eindeutig. Die Umgebungsvariable UNIQUE_ID wird für jede Anfrage auf den Bezeichner gesetzt. Eindeutige Kennungen sind aus verschiedenen Gründen nützlich, die den Rahmen dieses Dokuments sprengen würden.

Nach dem Update auf macOS Sierra verschiebt Apache httpd das alte httpd.confnach httpd.conf.pre-updateund platziert das neue. Um die Localhost-Arbeit auszuführen, versuchen Sie bitte das folgende Verfahren:

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

Dann testen:

curl -I -L localhost
sudo apachectl configtest gab mir alle Fehler! Lebensretter, danke.
Vielen Dank für die Antwort! Übrigens, wie bist du auf diese Lösung gekommen? Ich habe keine Fehler mit configtest bekommen (sollte ich einen bekommen?) und ehrlich gesagt wüsste ich nicht, wo ich anfangen sollte, selbst nach einer Antwort zu suchen.

Ich hatte das gleiche Problem. Ich rannte sudo apachectl configtestund bekam die Nachricht:

AH00526: Syntaxfehler in Zeile 6 von /private/etc/apache2/other/default-ssl.conf:

Ungültiger Befehl „SSLEngine“, möglicherweise falsch geschrieben oder von einem Modul definiert, das nicht in der Serverkonfiguration enthalten ist

Ich habe gerade die Standard-SSL-Konfigurationsdatei umbenannt, sodass sie nicht mehr geladen werden muss. Ein Apache-Neustart später kam alles zurück.

Ich hatte das gleiche Problem und habe das Kommentieren von mod_proxy_hceck in httpd.conf gelöst

LoadModule proxy_hcheck_module libexec/apache2/mod_proxy_hcheck.so

BEARBEITET: Ich habe in apache.org festgestellt, dass dieses Modul mod_watchdog erfordert, aber dieses Modul ist kommentiert, also kommentieren Sie einfach mod_proxy_hcheck oder kommentieren Sie mod_watchdog LoadModule watchdog_module libexec/apache2/mod_watchdog.so

hoffe, es funktioniert!

Das Auskommentieren von mod_proxy_hcheck hat es auch für mich gelöst. Davor konnte Apache sich stillschweigend nicht an seinen Port binden.

Ich hatte das gleiche Problem. Zum Glück konnte ich das Problem durch Zufall lösen. Nach einem Suitcase Fusion-Ladefehler wurde mir klar, dass das Problem nicht durch Apache verursacht wird. Das Problem ist die Hauptdatei /etc/.

Ersetzen Sie die Hosts-Datei

Sie können eine standardmäßige Mac OS-Hostdatei von http://cs.us.extensis.com/HostsFile/hosts.zip herunterladen .

Entpacken Sie die Hosts-Datei; sie sollte keine Dateiendung haben. Gehen Sie im Finder zu Gehe zu > Gehe zum Ordner. Geben Sie für „Gehe zum Ordner“ „/etc“ ein und drücken Sie die Eingabetaste. Ziehen Sie die Hosts-Datei in den etc-Ordner; Geben Sie einen Benutzernamen und ein Kennwort für einen Mac OS-Administrator ein, wenn Sie dazu aufgefordert werden. Nachdem Sie die Hosts-Datei im Ordner „etc“ abgelegt haben:

Öffnen Sie die Terminal-Anwendung. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste: sudo chmod 644 /etc/hosts Geben Sie Ihr Mac OS-Passwort ein und drücken Sie die Eingabetaste Je nachdem sehen Sie möglicherweise Aufzählungszeichen, Schlüsselsymbole oder nichts, wenn Sie Ihr Mac OS-Passwort in das Terminal-Fenster eingeben auf der Version von Mac OS, die Sie verwenden. Das ist normal.

Löschen Sie Ihren Mac OS DNS-Cache

Geben Sie im Terminalfenster den folgenden Befehl ein und drücken Sie die Eingabetaste: sudo killall -HUP mDNSResponder Starten Sie Ihren Mac neu Ursache

Suitcase Fusion verwendet die Hosts-Datei, um den Type Core zu finden und eine Verbindung zu ihm herzustellen, indem die Loopback-Adresse (127.0.0.1 oder localhost) verwendet wird. Wenn die Hosts-Datei nicht vorhanden ist oder der Eintrag für 127.0.0.1 auf einen anderen Namen als localhost zeigt, sehen Sie eine der oben angezeigten Fehlermeldungen.

Wenn Suitcase Fusion localhost nicht auf 127.0.0.1 auflösen kann, erhalten Sie die erste Fehlermeldung; Wenn der Typkern localhost nicht auf 127.0.0.1 auflösen kann, erhalten Sie die zweite Fehlermeldung.

Wenn die Hosts-Datei geändert wurde, kann sie beim Upgrade auf eine neue Version von Mac OS entfernt werden. Auch Anwendungen von Drittanbietern oder Netzwerkdienstprogramme können den localhost-Eintrag fälschlicherweise ändern. Weitere Informationen finden Sie unter So bearbeiten Sie die Hosts-Datei in Mac OS X mit Terminal.