× Startseite
Lokale MAMP macOS Serverumgebung für Hugo einrichten

MAMP Webserver lokal mit Hugo benutzen

MAMP macOS webserver Hugo

Wenn PHP innerhalb von Hugo benutzt werden soll, z.B. für ein Kontaktformular, ist MAMP für macOS eine Möglichkeit dies zu realisieren. Die lokale Serverumgebung ermöglicht das Testen von PHP mit Hugo wie auf einem Webserver im Internet.

Die MAMP GmbH, der Hersteller der kostenlosen Web-Entwicklungslösung mit Apache, Nginx, PHP & MySQL für macOS und Windows, macht es seinen Benutzern nicht gerade leicht die kostenlose Version zu installieren. Passen Sie auf und lesen Sie genau worauf Sie klicken.

Die MAMP Pro Version 6 kostet in Deutschland zurzeit 79 € für macOS. Keine Diskussion, die MAMP PRO Version 6 ist ihren Preis wert. Es gibt tolle Feature, aber für meinen Zweck reicht die kostenlose, von der Oberfläche her abgespeckte Version vollkommen aus.

MAMP installieren

Durch den Download der MAMP - Installation - wird diese automatisch angestoßen. Die lokale Installation erfolgt im Programme Verzeichnis. Der Installationspfad kann aber angepasst werden.

Der Hersteller betreibt ein Verwirrspiel, um Benutzer in Richtung der kostenpflichtigen MAMP Pro Version zu leiten. Es gibt im Programme Verzeichnis nur ein Icon für die MAMP Pro Version. Die MAMP.app ist in dem Verzeichnis Programme/MAMP versteckt. Im Launchpad ist aber auch ein Icon für den Start der MAMP Version vorhanden. Das Icon hat einen grauen Background im Gegensatz zur MAMP Pro Version mit türkisem Background. Also immer Augen auf, was angeklickt wird.

MAMP einrichten

Das wichtigste beim Einrichten von MAMP und dem verbinden mit Hugo ist das Stammverzeichnis (root). Dies wird in den Einstellungen unter Server konfiguriert.

Bei Klick auf das MAMP Icon wird die minimal Oberfläche gestartet. Hier kann der Webserver - Apache oder Nginx - und die PHP-Version - 7.4.12 oder 8.0.0 - eingestellt werden. Links oben das Zahnrad kann den Einstellungen Dialog aufrufen. Die Versionen werden durch Updates immer wieder erneuert.

MAMP - Start der minimal Oberfläche
MAMP - Start der minimal Oberfläche

Unter Einstellungen - Allgemein - habe ich “Server starten”, “Nach Updates suchen” und “Server stoppen” aktiviert. “Cache” ist aus und “WebStart-Seite öffnen” ist nur nötig wenn man zum Beispiel das mitgelieferte phpMyAdmin für die MySQL Datenbank braucht. “WebStart” kann auch auf der Startseite der App gestartet werden.

MAMP Einstellungen Allgemein
MAMP Einstellungen - Allgemein

Bei den Ports habe ich nichts geändert. Der Apache-Port ist 8888, der Aufruf des Hugo Projekts erfolgt durch localhost:8888 im Browser.

MAMP Einstellungen Ports
MAMP Einstellungen - Ports

Unter Einstellungen - Server - kann das Stammverzeichnis (root) für die Hugo Webseiten, über den Mini-Button “Auswählen”, eingestellt werden. Dies ist die wichtigste Einstellung. Mein Projekt möchte ich lokal im Verzeichnis /Users/frank/myWeb/mamp-sites/tekki speichern.

MAMP Einstellungen Server
MAMP Einstellungen - Server

Einstellungen - Cloud - die kostenlose MAMP Version hat keinen Cloud Zugriff. Die Anzeige ist nur ein Appetithäppchen und soll auf die kostenpflichtige Version hinweisen.

MAMP Einstellungen Cloud
MAMP Einstellungen - Cloud

Hugo mit MAMP verbinden

Normalerweise wird der Inhalt des public Verzeichnis per sFTP in das Root Verzeichnis des Webservers kopiert. In der config.toml wird dazu im baseurl Parameter der Domainname des Hugo Projektes eingetragen.

Wenn man dies auch bei einer lokalen MAMP Installation macht, funktioniert dies nicht. Deshalb muss in der config.toml der Eintrag wie folgt geändert werden: baseURL = "".

Das public Verzeichnis von Hugo in das lokale MAMP Verzeichnis umleiten

Durch den Terminal CLI-Befehl hugo im Hugo Projektverzeichnis wird eine neue, statische Version der Hugo Website erstellt. Standardmäßig werden diese Daten im Hugo-Projekt/public Verzeichnis zur Verfügung gestellt. Man könnte jetzt nach jedem erstellen den Inhalt von public in das MAMP Root Verzeichnis kopieren. Das ist aber sehr umständlich.

Meine Hugo Projekte bearbeite und speichere ich in der Apple iCloud. Dadurch habe ich vom Arbeitsplatz, von zuhause oder unterwegs, von allen Geräten mit Zugriff auf die iCloud, auch Zugriff auf meine Projekte. Das hat bis jetzt nie zu Problemen geführt. Bei dieser Konstellation muss natürlich MAMP auch auf allen Geräten im selben Pfad installiert sein.

Wie bereits oben beschrieben ist mein lokales MAMP Root Projekt Verzeichnis /Users/frank/myWeb/mamp-sites/tekki. Hugo muss jetzt beim Erstellen der statischen Version dazu gebracht werden in dieses Verzeichnis die Dateien zu schreiben. Dies funktioniert durch den config.toml Eintrag  publishDir = "/Users/frank/myWeb/mamp-sites/tekki".

Nachfolgend ein Auszug aus meiner config.toml:

# baseURL = "https://tekki-tipps.de/"
baseURL = ""
publishDir = "/Users/frank/myWeb/mamp-sites/tekki"

MAMP Logs

Wenn etwas nicht funktioniert ist der Blick in die MAMP Logs manchmal hilfreich. Die Logs für Apache, MySQL und PHP werden im Verzeichnis Programme/MAMP/logs zur Verfügung gestellt.

MAMP löschen

MAMP und auch das mitinstalliert MAMP Pro kann im Verzeichnis Programme restlos gelöscht werden, indem man das Verzeichnis Programme/MAMP und die App "MAMP PRO.app" im Programme Verzeichnis löscht.

Fazit

Wenn man PHP für seine Website nicht benötigt, reicht die in Hugo integrierte Entwicklungsumgebung vollkommen aus. Wenn aber PHP für einige dynamische Dinge eingesetzt werden muss, ist MAMP eine kostenlose und funktionierende Lösung. Durch das Umleiten mit publishDir ist dies sehr komfortabel.

Sobald das Hugo Projekt veröffentlicht werden soll, muss man aber daran denken den Parameter baseURL wieder auf den Domainnamen einzustellen. Das sollte aber kein Problem sein, weil man nicht dauernd am PHP Code rumschrauben muss. Irgendwann ist dieser Teil abgeschlossen und man braucht MAMP nicht mehr starten. Die integrierte Entwicklungsumgebung von Hugo stellt ja unter localhost:1313 weiterhin alles zur Verfügung.

Linkliste zu diesem Beitrag

Das könnte Sie auch interessieren

- Update 01. Aug. 2021 |
5 Minuten Lesezeit
0
Dieser Beitrag wurde mit der Hugo-Version 0.87.0 erstellt.

Kommentare werden bei deutscher Spracheinstellung nicht in der englischen Variante der Webseite angezeigt und umgekehrt.

© 2021 - Frank Kunert  -  Ich über mich
Ein Service von webdienste-kunert.de