Marcel Cremer
09. Oktober 2022

Ich bin zu HUGO gewechselt - und bereue es nicht!

Gepostet am 09. Oktober 2022
3 Minuten  • 569 Wörter  • Andere Sprachen:  English

Wie manche von euch vielleicht schon gesehen haben, habe ich meiner Homepage kürzlich ein neues Design verpasst. Über die letzten Wochen habe ich, mal mehr, mal weniger, immer wieder an einer neuen Version dieser Homepage gearbeitet, weil der alte Wordpress-Brocken sich mittlerweile ganz schön lahm angefühlt hat. Außerdem hat Wordpress mich ständig mit Sicherheitsupdates, Theme-Updates, Plugin-Updates und so weiter auf Trab gehalten - mal ganz von der Server-Maintenance abgesehen.

Ich habe bereits in der Vergangenheit static site generators benutzt, allerdings hatte ich damit immer so viele Probleme (von der Metatag-Geneierung über das Neu-Bauen, Publishing von verschiedenen Rechnern,…), dass ich keinen von Ihnen über längere Zeit benutzen wollte. Mit HUGO habe ich all diese Limitierungen aber mittlerweile erfolgreich behoben, und hier ist die “shiny new Homepage” - Tada!

Static Site Generator

Ich schreibe meine Artikel auch weiterhin in Markdown. Was sich geändert hat ist, dass ich sie in einem git-Repository nach Github pushe. Eine minimale github actions Datei überwacht dabei die main-Branch und baut die Homepage bei jedem push oder erfolgreichen Merge eines Pull-Requests neu und lädt sie per SFTP auf meinen Webserver.

Geplante Posts

Für geplante Posts kann man einfach in den Metadaten des Artikels das geplante Datum angeben und die Github Actions regelmäßig via cronjob bauen. HUGO wird (per default) nur die Artikel die in der Vergangenheit geschrieben wurden erstellen. Auf diese Weise werden die Artikel erst veröffentlicht, wenn diese geplant veröffentlicht werden sollen.

Übersetzungen

Für meine neue Webseite benutze ich das blist theme , welches schon im Standard Support für mehrere Sprachen bestitzt. Auf diese Weise kann ich einfach die Markdown Files in den Ordner für die entsprechende Sprache packen und HUGO stellt die Seiten nur in der jeweiligen Sprache dar. Außerdem erkennt das Theme automatisch, falls ein Artikel in mehreren Sprachen verfügbar ist und bietet direkt eine Verlinkung zu dem jeweiligen Äquivalent in anderer Sprache an.

Eigene 404-Seite

Es ist auch möglich, eine eigene 404 Seite zu erstellen und diese via .htaccess, nginx.con etc. zu verlinken. Die Konfigurationsdateien dafür packt man einfach in den static Ordner, wo sie von HUGO beim nächsten build einfach mit kopiert werden.

Robots.txt

Auf die gleiche Art und Weise wie man eigene 404 Seiten erstellen kann, kann man auch einfach eine robots.txt Datei erstellen und diese in den static Ordner packen. Auch hier kopiert HUGO bei jedem build einfach um und hält sie damit aktuell.

Kommentare

Kommentare sind die Achilles-Verse der static page Generatoren. Es gibt dort draußen jede Menge Lösungen, von Cloud-Providern (zugegebenermaßen die meiste Zeit nicht sehr Datenschutz-freundlich), zu selbstgehosteten Lösungen oder sogar die Nutzung von Github Issues als Kommentaren. Ich habe mich allerdings im ersten Schritt dazu entschlossen, auf Kommentare zu verzichten, da ich aktuell keine Zeit zur Moderation habe. Sorry dafür, aber ihr könnt mich natürlich immer per mail, twitter oder dev.to erreichen. Meine socials seht findet ihr auch im footer.

Fazit

HUGO als static site generator für meine Homepage fühlt sich kein bisschen schwierige zu warten an, als mein bisheriger Wordpress-blog. Ganz im Gegenteil fühle ich mich eigentlich sogar erleichtert, dass ich nicht mehr jeden Tag irgendwelche Wordpress Themes, Plugins, Seiten etc. patchen und dauernd irgendwas reparieren muss. Von der Server-Wartung mal ganz abgesehen. Außerdem ist die statisch generierte Seite um einiges datenschutzfreundlicher und viel schneller. Falls du HUGO auschecken möchtest, kann ich dich dazu nur ermuntern. Sobald man sich einmal an die Konventionen bezüglich Ordnern etc. gewöhnt hat, ist es wirklich sehr einfach damit umzugehen.

Follow me

I work on tech-related stuff, manage people and sometimes give some talks