Så här gör du Apache Starta httpd automatiskt på start i Mac OS X

Mac-baserade webbutvecklare är noga med att manuellt starta och stoppa Apache-webbservern i OS X via kommandoraden, men om du vill att Apache ska starta sig automatiskt vid start och omstart av en Mac, vill du gå en steg vidare och använd launchctl. Genom att göra så behöver webdevs inte starta apache startkommandon manuellt för att starta Apache httpd-demonen, det startar automatiskt när varje Mac startar upp. Naturligtvis visar vi också hur du ska stoppa Apache från att starta upp sig själv vid start.


I huvudsak vad dessa kommandon gör är att ladda apache webbserver lanseringsdemon till OS X vid systemstart. Eftersom det använder launchctl måste du ha administratörsbehörighet genom sudo för att ladda eller lossa apache. Kom ihåg att detta bara är nödvändigt för mer moderna versioner av OS X som inte längre har en "webbdelning" -alternativ i panelen Sharing preferences.

Obs! Det förutsätter att du redan har konfigurerat och installerat Apache på Mac, om du inte har gjort det redan bör du börja där, annars laddar du automatiskt Apache utan mycket konfiguration.

Ställ in Apache för att starta automatiskt på start i Mac OS X

Från terminalen anger du följande kommando:

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

Slå tillbaka och skriv in administratörslösenordet som begärt för att slutföra jobbet.

Nu när Mac startas eller startas om, startar Apache automatiskt, vilket enkelt kan verifieras genom att gå till en webbläsare och ange "localhost" som URL.

Du får se det bekanta "Det fungerar!" -meddelandet hos localhost och de här kärnfilerna finns i:

/Library/WebServer/Documents/

Vidare kan du också aktivera användarnivån Sites alternativ för localhost / ~ User, men det ligger utanför ramen för denna artikel, vi täcker det här.

Stoppa Apache från att ladda på start i Mac OS X

För att stoppa Apache från att starta sig automatiskt vid systemstart, behöver du helt enkelt ta bort agenten från launchd som med någon annan demon, så här:

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

Återigen måste du ange administratörslösenordet för att bekräfta ändringen.

Bestäm om Apache är laddat eller lossat i launchd

Om du inte är säker på om du har ställt in Apache automatiskt eller inte, kan du fråga om att starta för apache på följande sätt:

launchctl list|grep apache

Ser du inte apache.httpd tillbaka? Då är inte demonen laddad, och den startar inte automatiskt. Apache kan fortfarande användas och startas manuellt, men det börjar inte med en omstart eller start, ganska enkelt.

Om du konfigurerar Apache, PHP och MySQL i OS X låter alltför komplicerat eller anses vara för mycket besvär, är en annan bra lösning att använda ett förkonfigurerat webbserverpaket som MAMP. MAMP erbjuder också en självständig webbserverlösning, med Apache, PHP och MySQL som redan ingår i ett enda applikationspaket, startar en användare bara MAMP app och börjar de nödvändiga tjänsterna för att starta och stoppa en webbserver för lokal utveckling. MAMP är kraftfullt och ett bra verktyg för Mac-baserade webbutvecklare, och det innebär allmänt mycket mindre tinkering och komplexitet än att manuellt konfigurera de enskilda komponenterna för att köras i OS X själv. Endera lösningen kan vara bra, så använd det som fungerar för dig och din komfortnivå.