Jak rozpocząć apache w OSX Mountain Lion / Mavericks?

71

OSX Mountain Lion usunął GUI do udostępniania w Internecie, ale apache jest nadal zainstalowany.

Jak uruchomić i zatrzymać usługę? Jak uzyskać automatyczne uruchamianie usługi podczas uruchamiania?

slifty
źródło
Zaczyna się automatycznie, przynajmniej dla mnie. Po prostu wpisz 0.0.0.0, powinno tam być.
Wojciech Bednarski,
@Lri Nie. Uaktualniłem z 10.7
Wojciech Bednarski

Odpowiedzi:

79

LaunchDaemon dla Apache nadal tam jest, więc wystarczy go załadować:

sudo launchctl load -w /System/Library/LaunchDaemons/org.apache.httpd.plist

To -wczyni go stałym, tzn. Zostanie ponownie załadowany po ponownym uruchomieniu.

Gordon Davisson
źródło
Jak to wyłączyć, gdy zostanie uruchomione w ten sposób?
James McMahon,
9
@JamesMcMahon:sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist
Gordon Davisson
Hmm, coś wciąż działa na localhost, założyłem, że to Apache, może mam coś jeszcze uruchomionego.
James McMahon
@JamesMcMahon: Możesz użyć np., sudo lsof -i:80Aby zobaczyć, jaki proces nasłuchuje na danym porcie. Stamtąd ta poprzednia odpowiedź może pomóc ci ją wyśledzić ...
Gordon Davisson
35

Polecenia terminalowe

Rozpoczęcie: „sudo apachectl start”

Zatrzymywanie: „sudo apachectl stop”

Ponowne uruchomienie: „sudo apachectl restart”

Uruchamianie przy uruchamianiu

(Zobacz zaznaczoną odpowiedź w tym wątku)

slifty
źródło
Czy istnieje równoważny katalog ShutdownItems? W tej chwili nie mam przede mną OSX ...
Rich Homolka
Kiedyś był /etc/rc.shutdown.local - nie jestem pewien, czy to nadal jest w pobliżu ...
slifty
12

sudo apachectl startwłącza również uruchomionego demona. Zastępuje Disabledklucz /System/Library/LaunchDaemons/org.apache.httpd.plist, modyfikując /private/var/db/launchd.db/com.apple.launchd/overrides.plist, podobnie jak launchctl load -w.

Aby http://localhost/~username/działać, musisz utworzyć /etc/apache2/users/username.confi dodać następującą <Directory>dyrektywę:

<Directory "/Users/username/Sites/">
Options Indexes MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
Lri
źródło
1
Znalazłem tutaj naprawdę świetny opis tego. Obejmuje również włączenie modułu php. coolestguyplanettech.com/downtown/…
Peter Ehrlich,
8

Slifty i Lauri sugerują ważną koncepcję, nie mówiąc jej jasno.

„sudo apachectl start” nie tylko uruchomi apache, ale także zmodyfikuje /private/var/db/launchd.db/com.apple.launchd/overrides.plist, dzięki czemu apache będzie automatycznie restartowany przy każdym ponownym uruchomieniu systemu.

Podobnie, „sudo apachectl stop” zatrzyma apache i zmodyfikuje powyższy plik, aby apache nie uruchomił się po ponownym uruchomieniu systemu.

To wydaje się być najprostszym sposobem kontrolowania, czy usługa uruchamia się automatycznie.

aeropapa17
źródło
3

Dla tych, którzy szukają GUI, Click On Tyler opracował aplikację panelu sterowania, http://clickontyler.com/blog/2012/02/web-sharing-mountain-lion/

Próbka GUI

James McMahon
źródło
Fajny widget .. jednak w moim systemie coś poszło nie tak i Apache się nie uruchamia .. :(
Dilip Rajkumar
To samo tutaj. Wydaje się być trochę niechlujnie zakodowany - stare dobre zamieszanie związane z plikiem .pid Chyba ... zzz
conny
To jest fajne .. Ale nieaktualne, nie działa na Yosemite. Jak usunąć to z naszego panelu ustawień?
emocje
Aby usunąć:~/Library/PreferencePanes
emocje
Niestety nie jest już dostępny lub stał się częścią produktu komercyjnego, który można pobrać tylko w całości - nie tylko panel preferencji. Jakieś alternatywy?
Motti Shneor
1

To okienko preferencji zawiera łącza do folderu witryny komputera i otwarcia przeglądarki: http://stowlake.com/WebServer

Danny Swarzman
źródło
Ten raczej brzydki panel preferencji interfejsu użytkownika natychmiast ulega awarii, gdy próbujesz uruchomić serwer sieciowy w systemie OS-X 10.11 i 10.12. Dzienniki awarii dostępne na żądanie;)
Motti Shneor