Een paar weken geleden heeft The Rocket Yard een artikel gepubliceerd over de vele diensten die in de nabije toekomst uit macOS Server zullen worden verwijderd. Vandaag bespreek ik hoe je een van die diensten – webhosting – kunt terugbrengen met behulp van zowel de Apache-webserver die in macOS is ingebouwd als de volledige MAMP-suite.

Apache-webserver
De meeste Mac-gebruikers realiseren het zich niet, maar macOS wordt geleverd met een eigen ingebouwde webserver. Apache is een open-source webserver die sinds 1995 beschikbaar is, en vanaf 2016 was het de motor achter 46% van alle websites en 43% van de top miljoen websites in termen van verkeer.

Het hebben van een webserver ingebouwd in macOS is perfect voor degenen die informatie willen delen in een kleine werkgroep of sites willen opzetten en testen op een ontwikkelingswebserver voordat ze worden uitgerold naar een internetserver. Deze instructies laten zien hoe je de Apache server kunt instellen in macOS High Sierra. Je hebt enige kennis nodig van de Terminal-app en hoe je opdrachtregelprogramma’s uitvoert, kennis van webservers, en een vertrouwdheid met de vi editor.

Om te beginnen, bewerken we het Apache-configuratiebestand als root:

sudo vi /etc/apache2/httpd.conf

Een webserver is relatief nutteloos zonder een server-side scripttaal waarmee interacties kunnen worden afgehandeld; de meest populaire talen zijn PHP, Perl en Python. In dit voorbeeld zetten we PHP en Perl aan. Om dit te doen, moet u regel 176 van het configuratiebestand uitcommentariëren. In de vi editor kunt u dit eenvoudig doen door 176G te typen om direct naar regel 176 te gaan. Typ vervolgens een x over de # aan het begin van de volgende regel om de # commentaarmarkering te verwijderen:

#LoadModule php7_module libexec/apache2/libphp7.so

We willen hetzelfde doen om Perl scripts te kunnen draaien, wat in regel 177 van het configuratie bestand staat. Gebruik je pijltjestoets om naar beneden te gaan naar het begin van de volgende regel, typ dan de x over de # om de commentaar markering te verwijderen. Het configuratiebestand zou er dan ongeveer zo uit moeten zien rond regel 176 (zie schermafbeelding hieronder):

Het Apache-configuratiebestand bewerken in de vi editor

Om uw wijzigingen in de editor op te slaan, typt u :w!

We moeten nog steeds persoonlijke websites inschakelen door regel 173 van het commentaar te ontdoen, dus typ 173G en druk op return, typ vervolgens een x over het # om het te verwijderen. Hetzelfde moet gedaan worden met regel 513 van het bestand – type 513G en druk op return, typ dan een x over het # om het te verwijderen. Nu slaan we deze twee laatste wijzigingen op en sluiten de editor af met ZZ.

Het laatste commando heeft zojuist een bestand met de naam http-userdir.conf geactiveerd, en we moeten het nu bewerken: In Terminal, voer in:

sudo vi /etc/apache2/extra/httpd-userdir.conf

In dit configuratiebestand, moeten we regel 16 uitcommentariëren. Type 16G en druk op return, typ dan een x over de # om het te verwijderen. Sla op en sluit af door 16G te typen.

Tot aan Mac OS X Lion was het mogelijk om websites te delen met een lokale werkgroep en persoonlijke websites te maken met een klik; om webpagina’s te publiceren, plaatste je simpelweg je html bestanden in een Sites map. Nu moeten we veel meer werk doen. Laten we handmatig een Sites map aanmaken in Terminal en een klein test bestand maken zodat we weten dat onze web server werkt.

Voer de volgende commando’s in:

mkdir ~/Sites

echo “<html><body><h1>Welkom op mijn site</h1></body></html>” > ~/Sites/index.html.en

Volgende, we moeten er zeker van zijn dat we een gebruikers configuratie bestand hebben. Om er een te maken, typ in

sudo vi /etc/apache2/users/<uw korte gebruikersnaam>.conf

Waar <uw korte gebruikersnaam> uw Unix korte gebruikersnaam is. Weet u niet wat die naam is? Kijk bovenaan in het Terminal venster en je zal een naam zien verschijnen – dat is de korte gebruikersnaam. In mijn geval is dat stevensande, dus ik zou

sudo vi/etc/apache2/users/stevensande.conf invoeren (gebruik dit niet voor JOUW configuratiebestand!)

In dat configuratiebestand willen we het volgende invoeren (knippen en plakken in vi werkt):

<Directory “/Users/<uw korte gebruikersnaam>/Sites/”>
AddLanguage en .nl
AddHandler perl-script .pl
PerlHandler ModPerl::Registry
Options Indexes MultiViews FollowSymLinks ExecCGI
AllowOverride None
Require host localhost
</Directory>

Vergeet niet om <uw korte gebruikersnaam> te vervangen door uw korte gebruikersnaam. Typ ZZ om het nieuwe configuratiebestand op te slaan en sluit de editor af.

Als u zover bent gekomen… gefeliciteerd! Laten we nu onze configuratie van Apache controleren door het volgende commando in Terminal uit te voeren:

apachectl configtest

Je krijgt waarschijnlijk een waarschuwing die zegt “http: Could not reliable determine the server’s full qualified domain name” samen met hoe je dat probleem moet oplossen; aangezien dit alleen voor een lokale webserver is, negeer die waarschuwing – wat je wel wilt zien is de laatste regel: Syntax OK.

Als alles tot op dit punt in orde is, bent u klaar om Apache op te starten. Als de syntaxis van het configuratiebestand onjuist is, krijgt u waarschuwingen over wat er moet worden gerepareerd.

Ten slotte zijn we klaar om de Apache httpd-service te starten:

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

Om onze eenregelige webpagina te zien, start u Safari of uw favoriete browser en typt u http://localhost/

U zou moeten zien:

Het werkt!
Om uw gebruikers home directory te zien, typt u http://localhost/~<uw korte gebruikersnaam>, waarbij u <uw korte gebruikersnaam> nogmaals vervangt door uw Unix korte gebruikersnaam. Er zou moeten staan:

Welkom op mijn site
Als u besluit de Apache service uit te schakelen, is er een eenvoudig éénregelig Terminal commando om dat te doen:

sudo /usr/sbin/apachectl stop

Het leven gemakkelijker maken met MAMP
Dat was een hoop werk om alles aan de praat te krijgen, nietwaar? Er is een veel eenvoudiger manier om een lokale testserver op te zetten! Al geruime tijd hebben ontwikkelaars zich gerealiseerd dat het packagen van Apache, MySQL (een database server), en PHP/Python/Perl de beste manier was om een zeer krachtige web server te krijgen. Voeg “Mac” toe aan het begin hiervan, en je hebt MAMP – Mac, Apache, MySQL, en PHP/Python/Perl. De “AMP” distributies (LAMP voor Linux, WAMP voor Windows, MAMP voor Mac) vormen de ruggengraat van het razend populaire WordPress platform, dus als je een zeer complete WordPress ontwikkelomgeving op je Mac wilt, ben je bij ons aan het juiste adres.

MAMP is er in twee varianten; de gratis MAMP oplossing voor een persoonlijke webserver en MAMP Pro ($59), die extra diensten toevoegt zoals e-mail, dynamische DNS, en meer. In dit artikel zullen we de gratis MAMP installeren en configureren.

1) Download MAMP van de MAMP website

2) Open het .pkg bestand en volg de installatie instructies om MAMP op je Mac te installeren

3) Als de installatie is voltooid, vind je twee mappen in je map Programma’s – een voor MAMP, en een andere die een 14-daagse gratis proefversie is voor MAMP Pro. Open de map met de naam MAMP en start de MAMP app. U ziet nu iets dat op deze schermafbeelding lijkt:

De MAMP-opstartinterface

4) Klik op de knop “Servers starten”.

MAMP start zowel de Apache- als de MySQL-server en start vervolgens een webpagina waarin wordt bevestigd dat de installatie van MAMP is voltooid (zie onderstaande schermafbeelding):

(De welkomstpagina van MAMP, waarin wordt aangegeven dat alle services actief zijn.)

De link “Mijn website” toont een lege pagina, maar dat kun je veranderen door een index.html bestand te plaatsen in de htdocs map in de MAMP map. Het is eenvoudig om de Document Root directory te wijzigen door naar MAMP > Voorkeuren > Webserver.

te gaan.

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.