Hoe maak je Apache Start automatisch httpd bij Boot in Mac OS X

Mac-gebaseerde webontwikkelaars zijn waarschijnlijk bekend met het handmatig starten en stoppen van de Apache-webserver in OS X via de opdrachtregel, maar als je wilt dat Apache automatisch opstart na het opstarten en opnieuw opstarten van een Mac, wil je een stap verder en gebruik launchctl. Door dit te doen, hoeven webdevs de apache startcommando's niet handmatig uit te voeren om de Apache httpd daemon te starten, deze zal zichzelf automatisch starten elke keer dat de Mac opstart. Natuurlijk laten we ook zien hoe je kunt voorkomen dat Apache ook opstart tijdens het opstarten.


Wat deze commando's eigenlijk doen, is de Apache-webserver-startdaemon in OS X laden bij het opstarten van het systeem. Omdat het launchctl gebruikt, moet u beheerderstoegang hebben via sudo om apache te laden of te verwijderen. Houd er rekening mee dat dit alleen nodig is voor modernere versies van OS X die niet langer de optie 'webdeling' hebben in het voorkeurenpaneel Delen.

Opmerking: Dit gaat ervan uit dat je Apache al op de Mac hebt geconfigureerd en ingesteld, als je dat nog niet hebt gedaan, zou je daar moeten beginnen, anders laad je Apache automatisch zonder veel configuratie.

Stel Apache automatisch in op opstarten bij opstarten in Mac OS X

Voer vanuit de Terminal de volgende opdracht in:

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

Druk op Return en voer het beheerderswachtwoord in zoals gevraagd om de taak te voltooien.

Wanneer de Mac wordt opgestart of opnieuw wordt opgestart, wordt Apache automatisch gestart, wat eenvoudig kan worden gecontroleerd door naar een willekeurige browser te gaan en 'localhost' als URL in te voeren.

Je zult het bekende "It Works!" -bericht zien op localhost en die kernbestanden bevinden zich in:

/Library/WebServer/Documents/

Verderop kunt u ook de optie Sites op gebruikersniveau voor localhost / ~ gebruiker inschakelen, maar dat valt buiten het bestek van dit artikel, we behandelen dat hier.

Stop Apache van laden bij opstarten in Mac OS X

Om te voorkomen dat Apache zichzelf bij de start van het systeem automatisch opstart, hoeft u de agent alleen te verwijderen uit launchd als bij elke andere daemon, zoals zo:

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

Nogmaals, u moet het beheerderswachtwoord invoeren om de wijziging te bevestigen.

Bepaal of Apache geladen of ontladen is in launchd

Als je niet zeker weet of je Apache hebt ingesteld om automatisch te laden of niet, kun je een query uitvoeren op apache zoals:

launchctl list|grep apache

Zie apache.httpd niet terug? Dan is de daemon niet geladen en start deze niet automatisch. Apache kan nog steeds worden gebruikt en handmatig worden gestart, maar het zal zichzelf niet opstarten met een herstart of opstarten, vrij eenvoudig.

Als het configureren van Apache, PHP en MySQL in OS X te ingewikkeld klinkt of te veel gedoe is, is een andere geweldige oplossing om een ​​vooraf geconfigureerd webserverpakket zoals MAMP te gebruiken. MAMP biedt ook een op zichzelf staande webserveroplossing, waarbij Apache, PHP en MySQL al zijn opgenomen in een enkel toepassingspakket, een gebruiker net de MAMP-app start en de benodigde services start om een ​​webserver voor lokale ontwikkeling te starten en te stoppen. MAMP is krachtig en een geweldige tool voor op Mac gebaseerde webontwikkelaars, en het gaat over het algemeen veel minder sleutelen en complexer dan het handmatig configureren van de afzonderlijke componenten om zelf in OS X te draaien. Beide oplossingen kunnen geweldig zijn, dus gebruik wat u het beste uitkomt en uw comfortniveau.