Statische Webseite
Eine statische Webseite ist eine Webseite, die genau so gehostet wird, wie sie dem Webbrowser ausgeliefert wird,[1] im Gegensatz zu dynamischen Webseiten, die von einer Webanwendung zum Zeitpunkt das Aufrufs generiert werden. Statische Webseiten zeigen allen Benutzern gleichen Informationen und aus allen Kontexten an, vorbehaltlich der modernen Fähigkeiten eines Webservers zur Content Negotiation, Inhaltstyp oder Sprache des Dokuments anzupassen. Allerdings können statische Webseite mit JavaScript um dynamische Funktionen, wie Personalisierung oder Kommentarbereiche (z. B. Disqus), erweitert werden.[2]
Eigenschaften
[Bearbeiten | Quelltext bearbeiten]Technisch sind statische Webseiten HTML-Dokumente[3], die als Dateien im Dateisystem gespeichert und vom Webserver über HTTP zur Verfügung gestellt werden. URLs mit der Dateinamenserweiterung „.html“ sind aber nicht immer statisch.
Statische Webseiten nutzen nur einen Webserver als Dienst, daher müssen keine weiteren Abhängigkeiten wie Datenbanken oder andere Anwendungsserver betrieben werden, was das Ausfallrisiko reduziert. Auch verbessert sich die Sicherheit gegenüber dynamischen Websites, da weniger Softwarekomponenten potentzielle Sicherheitslücke haben können.[4] Die Websitegeschwindigkeit steigt im Vergleich zu dynamischen Websites. Auch können Cloud-Speicher zum Webhosting genutzt werden.
Statische-Website-Generatoren
[Bearbeiten | Quelltext bearbeiten]Manuell erstellte statische Webseiten eignen sich für Websites, mit wenigen Webseiten die nur selten aktualisiert werden müssen. Soll eine Website viele Webseiten umfassen oder oft geändert werden, werden Static site generators (SSG) genutzt. Der Webinhalt wird in einer vereinfachte Auszeichnungssprachen wie Markdown oder AsciiDoc gespeichert, dann mit einer Template-Engine als HTML Seiten generiert und dann auf einen Webserver zur Veröffentlichung geladen.
Statische-Website-Generatoren könne dabei die meisten Features von dynamischen Content-Management-Systemen bieten, die keine benutzerspezifischen Daten verarbeiten: Metadaten, Transklusionen, automatische Inhaltsverzeichnisse, Navigationsleisten und Tags über die Inhalte der gesamten Seite. Manche bieten auch eine rudimentäre lokale Suchmaschine an.[5] Um Inhalte zu erstellen oder zu verändern, werden entweder die Quelltexte lokal angepasst, mit dem statischen Website-Generator HTML-Dateien erzeugt und dann veröffentlicht, oder Softwareentwicklungsplattformen können Quelltexte auch online verwalten, direkt mit CI/CDs HTML-Dateien erzeugen und diese als statische Datei hosten.
Programmiersprache | Auszeichnungssprachen | Template-Engine | Bemerkung | |
---|---|---|---|---|
Jekyll | Ruby | Markdown, Textile | Liquid | genutzt von GitHub-Pages |
Middleman | Markdown | |||
Hugo | Go | Markdown, AsciiDoc, reStructuredText[6] | Template-Engine von Go[7] | |
Gatsby | React | Markdown | ||
Next.js | JavaScript | Markdown | ||
Astro.build | Markdown | |||
MkDocs | Python | Markdown | Jinja2 | |
Sphinx | reStructuredText, Markdown | |||
Pelican[8] | Markdown | |||
Franklin[9] | Julia | Markdown | ||
Pandoc | Haskell | Markdown, reStructuredText, textile, MediaWiki | rudimentäres Templating[10] |
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Steven Melendez: The Difference Between Dynamic & Static Web Pages. In: Chron. 10. August 2018, archiviert vom am 20. März 2019; abgerufen am 20. März 2019 (englisch): „Static by definition means something that does not change. The first pages on the World Wide Web were largely static and unchanged, delivering the same information about a particular topic to anyone who visited. In some cases, sites may evolve slightly over time but are still largely static, meaning that they only change when manually changed by their creators, not on a regular and automated basis.“
- ↑ Eduardo Bouças: An Introduction to Static Site Generators. 20. Mai 2015, archiviert vom am 26. Juni 2019; abgerufen am 20. März 2019 (englisch): „A dangerous solution: There’s an easy exit for whenever you’re faced with the challenge of dynamically updating content on a static site: “I can do it with JavaScript”. Doing processing on the client-side and appending the results to the page after it’s been served can be the right approach for some cases, but must not be seen as the magic solution that turns your static site into a full dynamic one.“
- ↑ What is a Static Web Page? - Definition from Techopedia In: Techopedia.com. Abgerufen am 4. November 2018 (englisch).
- ↑ Why use a static site generator? In: Jekyll Tips. 6. Februar 2017, abgerufen am 17. Februar 2017 (englisch).
- ↑ vitepress.dev - Local Search
- ↑ /gohugo.io - Content formats
- ↑ gohugo.io - Introduction to templating
- ↑ Pelican - A Python Static Site Generator. In: Pelican. Pelican, abgerufen am 11. Februar 2025 (englisch).
- ↑ Building static websites in Julia. In: Franklin. Franklin, abgerufen am 11. Februar 2025 (englisch).
- ↑ Building a Website using Pandoc, Markdown, and Static HTML