Static Site Generators: Schnelle und sichere Websites

← zurück zum Blog

Über Flat-File-CMSe haben wir an dieser Stelle bereits mehrmals geschrieben. Sie sind eine gute Alternative zu den bekannten Content-Management-Systemen, die auf eine Datenbank angewiesen sind. Einen Schritt weiter als Flat-File-Systeme gehen Static Site Generators.

Static Site Generators: Schnelle und sichere Websites

Static Site Generators: Schnelle und sichere Websites

Wie funktionieren Static Site Generators?

Im Gegensatz zu einem datenbankbasierten CMS, bei dem Inhalte in der Datenbank gespeichert sind und mittels einer Scriptsprache (wie z.B. PHP) als HTML aufbereitet werden, findet die «Herstellung» einer Website bei Static Site Generators in der Regel auf dem eigenen Computer statt. Alle nötigen Teile der Website sind in einem lokalen Verzeichnis gespeichert und werden vom Static Site Generator aufbereitet. Als Produkt spuckt der Generator dann fixfertige HTML-Dateien aus, die nur noch auf einen passenden Webhosting-Account kopiert werden müssen. Damit entfällt die Rechenarbeit für den Webserver, was sich sehr positiv auf die Ladezeiten einer Website auswirkt.

Static Site Generators werden auf der Kommandozeile bedient und Inhalte in der Regel in Markdown geschrieben. Anhand von Meta-Daten am Anfang einer Datei, «Front Matter» genannt, baut der Generator die Website auf.

Wann macht der Einsatz eines Static Site Generators Sinn?

Der Einsatz eines Static Site Generators bietet sich in vielen Fällen an. Allen voran fürs Bloggen. Die meisten der erhältlichen Generatoren sind denn auch für den Aufbau eines Blogs entwickelt worden und bieten entsprechend umfassende Optionen an. Nicht nur Blogs, auch Websites für KMU lassen sich mit Static Site Generators problemlos umsetzen. Nicht zuletzt eignen sich Dokumentationen und Hilfetexte ebenfalls sehr dafür, mit einem Generator gepflegt zu werden. Schliesslich ändert sich der Inhalt solcher Texte nicht allzu oft und auch für Hilfesuchende ist ein schneller Seitenaufbau ein wichtiger Faktor.

Wann macht ein Content-Management-System Sinn?

Genauso, wie ein mächtiges Content-Management-System nicht für jeden Einsatzzweck geeignet ist, sind auch Static Site Generators nicht immer die richtige Wahl. Publizieren Sie mehrmals täglich neue Beiträge auf Ihrem Blog, sammeln sich mit der Zeit eine Menge Inhalte an. Ein Site Generator muss so mehrmals am Tag die Webdateien neu generieren. Aufgrund der grossen Anzahl an Beiträgen dauert dieser Vorgang zudem immer länger. In vielen Fällen ist dann die Wahl eines Systems wie WordPress empfehlenswert. Wird Ihr Blog ausserdem von technisch weniger versierten Personen mit Inhalten gefüllt, macht der Griff zu einem System mit grafischer Oberfläche meistens mehr Sinn.

Sind die Inhalte Ihrer Website in einer komplexen Struktur organisiert, müssen verschiedene Benutzerrollen definiert sein oder viele verschiedene Sprachen abgedeckt werden, empfiehlt sich fast immer ein Content-Management-System. Für solche Aufgaben sind Static Site Generators schlichtweg nicht vorgesehen. Was aber natürlich nicht heisst, dass mit Site Generators keine komplexen Websites machbar sind.

Static Site Generator oder CMS?

Schlussendlich lässt sich mit ein paar wenigen Fragen schnell eruieren, ob es für das nächste Projekt ein Generator oder doch ein umfangreicheres CMS sein soll:

  • Wird die Website mehrmals täglich aktualisiert?
  • Werden Funktionen benötigt, die nicht durch einen Drittanbieter zur Verfügung gestellt werden (Kommentare, Formulare, Suche) oder ist der Einsatz von Drittanbietern z.B. aus Datenschutzgründen ausgeschlossen?
  • Wird die Website von technisch weniger versierten Benutzern verwaltet oder sind verschiedene Benutzerrollen und Workflows vorgesehen?

Lautet die Antwort auf eine dieser Fragen «Ja», ist ein Content-Management-System die bessere Wahl. In allen anderen Fällen lohnt sich der Blick auf einen der zahlreichen Static Site Generators.

Für jeden Einsatzzweck der passende Generator

Die Auswahl an Static Site Generators ist unglaublich gross. Die Website StaticGen bietet einen Überblick über die bei GitHub erhältlichen Open-Source-Generatoren. Wir stellen hier einige Vertreter kurz vor:

  • Jekyll
    Der vom GitHub-Gründer ins Leben gerufene Generator ist in Ruby geschrieben und setzt auf die Template-Engine Liquid. Jekyll ist das WordPress unter den Static Site Generators, was die Verbreitung angeht.
  • Exposé
    Das Bash-Script Exposé verwandelt Fotos und Videos in wunderschöne Foto- bzw. Videoessays.
  • Middleman
    Middleman ist äusserst vielseitig einsetzbar, bietet zahlreiche Plugins und ist ebenfalls in Ruby geschrieben. Der E-Mail-Marketing-Anbieter MailChimp verwendet Middleman für seine Website.
  • Metalsmith
    Metalsmith ist in JavaScript geschrieben und eigentlich viel mehr als «nur» ein Static Site Generator. Bei Metalsmith sind alle Funktionen als Plugins konzipiert, die sich dann auf ein Verzeichnis und die darin enthaltenen Inhalte anwenden lassen. Die Möglichkeiten sind damit fast unbegrenzt.
  • Hugo
    Hugo, in der von Google entwickelten Sprache Go geschrieben, ist auch auf Windows-Computern sehr einfach zu installieren und generiert Websites, Blogs, Dokumentationen oder Portfolios in Windeseile.
  • Sculpin
    Sculpin ist in PHP geschrieben und eignet sich damit vor allem für PHP-Entwickler, die Sculpin in der beliebten Skriptsprache erweitern möchten.
  • Pelican
    Der Vertreter für alle Python-Liebhaber setzt auf die Template-Engine Jinja2 und kann Inhalte aus WordPress oder RSS-Feeds importieren.

12 Kommentare

  1. Vielen Dank für diesen äusserst interessanten Beitrag.

    Ich habe mir überlegt meine neue Seite mit einem Pagebuilder für WordPress zu realisieren, einfach weil WordPress so eine Eierlegendewollmilchsau ist.

    Habt ihr auch Erfahrungen was die SEO Eigenschaften betreffen?

    • Hi Tom, ich bin überzeugt, dass sich auch mit einem Pagebuilder für WordPress suchmaschinenoptimierte Websites erstellen lassen. WordPress macht das von Haus aus bereits sehr gut und ausserdem gibt’s zum Thema SEO gute Plugins, die einem das Leben vereinfachen.

      • Danke für Deine Antwort,
        ich merke gerade, dass meine Formulierung etwas unklar war.

        WordPress kann SEO per excellence, ja :-)

        Meine Frage war eher auf die Static Sites gemünzt :-)

        • Oh :) Bitte entschuldige das Missverständnis. Ganz so einfach wie bei WordPress ist’s mit Static Site Generators in Sachen SEO nicht. Sprich, Du musst die nötigen Tags zuerst in das verwendete Theme bekommen. Mit Variablen in den jeweiligen Template-Sprachen ist das aber keine grosse Sache. Aber eben, nicht ganz so automatisch wie bei WordPress.

  2. Auch vielen Dank für den intere4ssanten Beitrag. Da wärs dann allerdings schön, wenn man das auch auf dem cyon-hosting laufen lassen könnte.
    Dürfen wir uns Hoffnung machen, dass unser bestes Hosting irgendwann auch nodejs-fähig wird?

    • Hallo Johannes, danke für Deinen Kommentar. Node-Hosting ist auf unserem Radar, Konkretes ist dazu jedoch noch nicht geplant. Generell sind Static Site Generators aber auf den lokalen Gebrauch ausgelegt.

  3. Meiner Ansicht nach auch in der Liste zu erwähnen wäre harp.js (http://harpjs.com)

  4. Auch Mobirise (www.mobirise.com) sollte man sich unbedingt mal anschauen.

  5. Hallo,
    Ihr Beitrag hat meine Idee welche mir schon lange im Kopf „rumspinnt“ wieder mal zum rumspinnen verleitet.
    Ich kenne viele Webseiten Betreiber die wenn es hoch kommt 1x pro Monat mal ein Bild ändern oder einen neuen Beitrag in der Kategorie News erstellen. Dazu verwenden sie das CMS Joomla,eigentlich eine Verschwendung von Ressourcen aber das CMS kennen sie nun ein wenig und möchten dabei bleiben.

    Ich frage mich ob es nicht sinnvoll wäre wenn die Betreiber nach dem sie Ihren Beitrag geschrieben haben im Backend einen grossen grünen Button mit der Aufschrift „generieren“ klicken könnten um so alle Seiten in einen anderen Ordner, z.B. /livesite zu kopieren/generieren was dann der Zielordner für die eigentliche Webseite meinedomain.ch als reine HTML Seite beinhaltet. Joomla würde man jeweils z.B. in einem Ordner /joomla via Subdomain work.meinedomain.ch aufrufen um da ab und zu mal etwas zu editieren oder zu ergänzen. Und wenn fertig wieder den grossen grünen Button klicken um so wieder alle Seiten im Ordner /livesite zu überschreiben, sprich aktualisieren.

    So würde MySql und Webserver massiv entlastet, Energie gespart und die Betreiber könnten bei Ihrem CMS (Joomla, WordPress, was auch immer CMS) bleiben was sie nun kennen und die Webseite ja bereits aufgebaut ist.

    Gibt es bereits solche Erweiterungen, z.B. für Joomla oder ist das eine so dümmliche Idee oder das ganze hat einen Hacken den ich übersehe, dass noch niemand so etwas geschrieben hat?

    Beste Grüsse
    Beat

    • Hallo Beat, vielen Dank für den Kommentar. Das ist ganz und gar keine dümmliche Idee. Für Joomla ist mir keine entsprechende Erweiterung bekannt. Für WordPress gibt es jedoch das Plugin WP Static Site Generator, das genau diesen Ansatz verfolgt.

Kommentar hinzufügen

Ihre E-Mail-Adresse wird nicht veröffentlicht.
Auszufüllende Felder sind mit einem * gekennzeichnet.

*
*
*
Einfache HTML Anweisungen wie a, strong, blockquote etc. sind möglich.

Hinweis

Wir behalten uns vor, Spam-, beleidigende oder anderweitig unpassende Kommentare zu entfernen.

← zurück zum Blog