2016-09-22 27 views
10

Niedawno zaktualizowałem swoją maszynę roboczą do systemu MACOS Sierra, a teraz żadna z moich konfiguracji hosta wirtualnego nie działa. Muszę zrekonfigurować wszystkie te, co jest ogromnym bólem.Hosty wirtualne nie działające z instalacją systemu MacOS Sierra

Zastanawiam się - czy to normalne, że tak się stało? Czy istnieje sposób, aby temu zapobiec w przyszłości, gdy aktualizuję mój system operacyjny?

Ponadto wygląda na to, że moja konfiguracja wirtualnego hosta nie działa. Patrz poniżej.

Mam edytowany /etc/apache2/extra/httpd-vhosts.conf obejmuje:

<VirtualHost *:80> 
ServerAdmin [email protected] 
DocumentRoot "/Users/splashnw/Sites/tm-charts" 
ServerName tm-charts.dev 
ErrorLog "/private/var/log/apache2/tm-charts.dev-error_log" 
CustomLog "/private/var/log/apache2/tm-charts.dev-access_log" common 
</VirtualHost> 

A mój plik /etc/hosts posiada:

127.0.0.1 tm-charts.dev 

Kiedy przejdź do tm-charts.dev w przeglądarce, tam jest po prostu wiadomość : "To działa!" Nie mój projekt, który początkowo widziałem pod tym adresem URL przed instalacją systemu macOS Sierra.

Czy możesz mi powiedzieć, co tu jest nie tak? Dziękuję Ci!

+0

Co IP nie można dostać, jeśli ' ping tm-charts.dev'? – Capsule

+0

@capsule Jeśli pinguję, otrzymuję tę zawartość: '64 bajtów od 127.0.0.1: icmp_seq = 0 ttl = 64 czas = 0.074 ms 64 bajtów od 127.0.0.1: icmp_seq = 1 tt = 64 czas = 0.066 ms 64 bajtów od 127.0.0.1: icmp_seq = 2 ttl = 64 czas = 0,088 ms 64 bajtów od 127.0.0.1: icmp_seq = 3 ttl = 64 czas = 0,060 ms' itd. – Liz

+0

Chciałem tylko upewnić się, że pasuje do 127.0 .01 i plik hosts jest rzeczywiście w porządku. Czy możesz spróbować dodać do niego ':: 1 localhost'? Fakt, że nadal znajdujesz się w domyślnym apache vhost dowodzi, że Apache wciąż nasłuchuje na IPv4, więc '' 'baza vhost powinna być dowolnym IP, v4 lub v6, ale kto wie. – Capsule

Odpowiedz

20

Po aktualizacji do systemu MacOS nadpisał on swój "httpd.conf" w folderze/etc/apache2 /. Nadpisał również swój "" plik http-vhost.conf "również w folderze/etc/apache2/extra.

Trzeba sprawdzić, czy masz plik kopii zapasowej w tych katalogach odkomentować linie lub wykorzystują to jako przykład, aby pomóc przywrócić ustawienia: http://digitalshore.io/local-web-development-environment-apache-macos-sierra-10-12/

sprawdzić zarówno „/etc/apache2” i "/etc/apache2/extra" Folder dla http-conf ~ poprzednie i http-vhost.conf ~ poprzednia pliki umieścić swoje poprzednie ustawienia z powrotem

po zakończeniu należy uruchomić sudo apachectl restart, aby nowe ustawienia zaczęły obowiązywać.

+0

Widzę httpd.conf.pre-update i httpd.conf ~ poprzedni. Czy powinienem skopiować całą zawartość httpdconf ~ previous do głównego pliku httpd.conf? Jeśli tak, to czy mogę zastąpić całą zawartość httpd.conf i http-vhost.conf? Próbowałem z edytorem bez szczęścia. –

+0

Uruchomiłem ponownie apachectl i problem rozwiązany, dziękuję! – Shweta

3

Również po zakończeniu z instrukcjami udzielonymi przez @ chris-Holcomb, wykonaj następujące czynności:

edytować plik/etc/apache2/httpd.conf:

Odkomentuj linia 160:

#LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so 

do

LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so 

Odkomentuj linia 509:

#Include /private/etc/apache2/extra/httpd-vhosts.conf 

do

Include /private/etc/apache2/extra/httpd-vhosts.conf 

jako środek ostrożności, wyczyścić pamięć podręczną DNS za pomocą następującego polecenia przy użyciu terminala:

sudo killall -HUP mDNSResponder 

Wreszcie, restart apache:

sudo apachectl restart 

Źródło: Apple Stack Exchange