Hur man får Apache att starta httpd automatiskt vid uppstart i Mac OS X

Anonim

Mac-baserade webbutvecklare är förmodligen bekanta med att manuellt starta och stoppa Apache-webbservern i OS X via kommandoraden vid det här laget, men om du vill att Apache ska starta automatiskt vid start och omstart av en Mac , vill du gå ett steg längre och använda launchctl. Genom att göra det behöver webdevs inte köra apaches startkommandon manuellt för att starta Apache httpd-demonen, den startar sig själv automatiskt varje gång Mac startar upp.Naturligtvis kommer vi också att visa hur man stoppar Apache från att starta upp sig själv vid uppstart.

Vad dessa kommandon gör är att ladda apache-webbserverns startdemon till OS X när systemet startar. Eftersom det använder launchctl måste du ha administratörsåtkomst via sudo för att ladda eller ladda ur apache. Kom ihåg att detta bara är nödvändigt för mer moderna versioner av OS X som inte längre har ett "webbdelning"- alternativ i inställningspanelen Delning.

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

Ställ in Apache att starta automatiskt vid uppstart i Mac OS X

Från terminalen anger du följande kommando:

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

Tryck på retur och ange administratörslösenordet för att slutföra jobbet.

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

Du kommer att se det välbekanta "It Works!" meddelande på localhost och dessa kärnfiler finns i:

/Library/WebServer/Documents/

Om du går längre kan du även aktivera alternativet Sites på användarnivå för localhost/~User, men det ligger utanför den här artikeln, vi täcker det här.

Stoppa Apache från att laddas vid uppstart i Mac OS X

För att stoppa Apache från att starta sig själv automatiskt vid systemstart behöver du helt enkelt ta bort agenten från lanseringen som med alla andra demoner, som så:

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.

Fastställ om Apache är laddad eller avladdad i launchd

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

launchctl list|grep apache

Ser du inte apache.httpd returnerad? Då laddas inte demonen, och den kommer inte att starta automatiskt. Apache kan fortfarande användas och startas manuellt, men den startar inte av sig själv med en omstart eller start, ganska enkelt.

Om att konfigurera Apache, PHP och MySQL i OS X låter alltför komplicerat eller anses vara för mycket krångligt, är en annan bra lösning att använda ett förkonfigurerat webbserverpaket som MAMP.MAMP erbjuder också en fristående webbserverlösning, med Apache, PHP och MySQL redan inkluderade i ett enda applikationspaket, en användare startar bara MAMP-appen och startar de nödvändiga tjänsterna för att starta och stoppa en webbserver för lokal utveckling. MAMP är kraftfullt och ett utmärkt verktyg för Mac-baserade webbutvecklare, och det innebär generellt mycket mindre mixtrande och komplexitet än att manuellt konfigurera de enskilda komponenterna för att köras i OS X själv. Båda lösningarna kan vara bra, så använd den som fungerar för dig och din komfortnivå.

Hur man får Apache att starta httpd automatiskt vid uppstart i Mac OS X