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?


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.


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)


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>

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.


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


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


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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.