Informationen zu GitHub Pages
GitHub Pages ist ein Hosting-Dienst für statische Websites, der HTML-, CSS- und JavaScript-Dateien direkt aus einem Repository auf GitHub bezieht, diese Dateien optional einem Build-Prozess unterzieht und eine Website veröffentlicht. Beispiele für GitHub Pages-Websites findest du in der GitHub Pages-Beispielsammlung.
Du kannst deine Website auf der github.io
-Domäne von GitHub oder deiner eigenen benutzerdefinierten Domäne hosten. Weitere Informationen findest du unter Eine benutzerdefinierte Domain für Ihre GitHub Pages-Website konfigurieren.
Du kannst GitHub Pages-Websites erstellen, die im Internet öffentlich verfügbar sind. Organisationen, die GitHub Enterprise Cloud nutzen, können Websites auch privat veröffentlichen, indem sie die Zugriffssteuerung für die Website verwalten. Weitere Informationen findest du unter Ändern der Sichtbarkeit deiner GitHub Pages-Website in der GitHub Enterprise Cloud-Dokumentation.
Weitere Informationen zu den ersten Schritten findest du unter Erstellen einer GitHub Pages-Website.
Organisationsbesitzer*innen können die Veröffentlichung von GitHub Pages-Websites aus Repositorys der Organisation deaktivieren. Weitere Informationen findest du unter Verwalten der Veröffentlichung von GitHub Pages-Websites für deine Organisation.
Arten von GitHub Pages-Websites
Es gibt drei Arten von GitHub Pages-Websites: Projekt-, Benutzer- und Organisations-Websites. Projekt-Websites sind mit einem bestimmten Projekt verbunden, das auf GitHub gehostet wird, z. B. einer JavaScript-Bibliothek oder einer Rezeptsammlung. Benutzer- und Organisationswebsites sind mit einem bestimmten Konto mit GitHub.com verbunden.
Um eine Benutzerwebsite zu veröffentlichen, musst du ein Repository erstellen, das deinem persönlichen Konto mit dem Namen <username>.github.io
gehört. Zum Veröffentlichen einer Organisationswebsite musst du ein Repository erstellen, das einer Organisation mit dem Namen <organization>.github.io
gehört. Sofern Sie keine benutzerdefinierte Domäne verwenden, sind Benutzer- und Organisationsseiten unter http(s)://<username>.github.io
oder http(s)://<organization>.github.io
verfügbar.
Die Quelldateien für eine Projekt-Website werden im selben Repository gespeichert wie das zugehörige Projekt. Sofern Sie keine benutzerdefinierte Domäne verwenden, sind Projektseiten verfügbar unter http(s)://<username>.github.io/<repository>
oder http(s)://<organization>.github.io/<repository>
.
Weitere Informationen dazu, wie sich benutzerdefinierte Domänen auf die URL für deine Website auswirken, findest du unter Informationen zu benutzerdefinierten Domains und GitHub Pages.
Du kannst für jedes Konto auf GitHub nur eine Benutzer- oder Organisationswebsite erstellen. Für Projektwebsites gibt es keine Beschränkung, ganz gleich, ob sie einer Organisation oder einem Benutzerkonto gehören.
Veröffentlichungsquellen für GitHub Pages-Websites
Warnung: GitHub Pages-Websites sind im Internet öffentlich zugänglich, auch wenn das Repository für die Website privat ist (wenn Ihr Plan oder Ihre Organisation dies zulässt). Wenn das Repository deiner Website vertrauliche Daten enthält, solltest Du diese vor der Veröffentlichung entfernen. Weitere Informationen findest du unter Informationen zu Repositorys.
Du kannst deine Website veröffentlichen, wenn Änderungen an einen bestimmten Branch gepusht werden, oder du kannst einen GitHub Actions-Workflow schreiben, um deine Website zu veröffentlichen.
Wenn du keine Kontrolle über den Buildprozess für deine Website benötigst, wird empfohlen, deine Website zu veröffentlichen, wenn Änderungen an einen bestimmten Branch gepusht werden. Du kannst angeben, welcher Branch und welcher Ordner als Veröffentlichungsquelle verwendet werden sollen. Der Quellbranch kann ein beliebiger Branch in deinem Repository sein, und der Quellordner kann entweder der Stamm des Repositorys (/
) im Quellbranch oder der Ordner /docs
im Quellbranch sein. Wenn Änderungen an den Quellbranch gepusht werden, werden die Änderungen im Quellordner in deiner GitHub Pages-Website veröffentlicht.
Wenn du einen anderen Buildprozess als Jekyll verwenden möchtest oder nicht möchtest, dass deine kompilierten statischen Dateien in einem dedizierten Branch enthalten sind, wird empfohlen, einen GitHub Actions-Workflow zu schreiben, um deine Website zu veröffentlichen. GitHub bietet Workflowvorlagen für häufiger vorkommende Veröffentlichungsszenarien, die Ihnen beim Schreiben von Workflows helfen.
Weitere Informationen findest du unter Eine Veröffentlichungsquelle für deine GitHub Pages-Website konfigurieren.
Generatoren für statische Websites
GitHub Pages veröffentlicht alle statischen Dateien, die du an dein Repository pushst. Du kannst eigene statische Dateien erstellen oder einen Generator für statische Websites verwenden, der die Website für dich erstellt. Darüber hinaus kannst du deinen eigenen Buildprozess lokal oder auf einem anderen Server anpassen.
Wenn du statt Jekyll einen benutzerdefinierten Buildprozess oder einen anderen Generator für statische Websites verwendest, kannst du GitHub Actions schreiben, um deine Website zu erstellen und zu veröffentlichen. GitHub bietet Workflowvorlagen für mehrere Generatoren für statische Websites. Weitere Informationen findest du unter Eine Veröffentlichungsquelle für deine GitHub Pages-Website konfigurieren.
Wenn du deine Website von einem Quellbranch aus veröffentlichst, verwendet GitHub Pages standardmäßig Jekyll zum Erstellen deiner Website. Wenn du statt Jekyll einen anderen Generator für statische Websites verwenden möchtest, empfehlen wir, stattdessen GitHub Actions zu schreiben, um deine Website zu erstellen und zu veröffentlichen. Anderenfalls deaktiviere den Jekyll-Buildprozess, indem du im Stamm deiner Veröffentlichungsquelle eine leere Datei namens .nojekyll
erstellst, und befolge dann die Anweisungen des gewünschten Generators für statische Websites, um deine Website lokal zu erstellen.
GitHub Pages unterstützt keine serverseitigen Sprachen wie PHP, Ruby oder Python.
Grenzwerte für die Verwendung von GitHub Pages
GitHub Pages-Websites, die nach dem 15. Juni 2016 und mittels github.io
-Domänen erstellt wurden, werden über HTTPS bereitgestellt. Wenn du deine Website vor dem 15. Juni 2016 erstellt hast, kannst du die HTTPS-Unterstützung für den Traffic zu deiner Website aktivieren. Weitere Informationen findest du unter GitHub Pages-Website mit HTTPS schützen.
Verbotene Verwendungen
GitHub Pages soll oder darf nicht als kostenloser Webhostingdienst zum Betreiben deiner Onlinegeschäfts-, E-Commerce- oder sonstigen Website verwendet werden, die in erster Linie darauf ausgerichtet ist, gewerbliche Transaktionen zu vereinfachen oder kommerzielle Software-as-a-Service-Lösungen (SaaS) bereitzustellen. GitHub Pages-Websites sollten nicht für Transaktionen sensibler Daten verwendet werden, also beispielsweise nicht für das Senden von Passwörtern oder Kreditkartennummern.
Darüber hinaus unterliegt die Nutzung von GitHub Pages den GitHub-Nutzungsbedingungen, einschließlich der Beschränkungen für get-rich-quick-Schemas, sexuelle obszöne Inhalte und gewaltverherrlichende oder bedrohliche Inhalte oder Aktivitäten.
Lernübungen
Die Verwendung von GitHub Pages zum Erstellen einer Kopie einer vorhandenen Website als Lernübung ist zulässig. Zusätzlich zur Einhaltung der GitHub-Vertragsbedingungn müssen Sie den Code jedoch selbst schreiben, die Website darf keine Benutzerdaten sammeln, und Sie müssen auf der Website einen gut sichtbaren Haftungsausschluss angeben, aus dem hervorgeht, dass das Projekt nicht mit dem Original verknüpft ist und nur für Schulungszwecke erstellt wurde.
Usage limits (Nutzungseinschränkungen)
GitHub Pages unterliegen den folgenden Nutzungseinschränkungen:
-
Für GitHub Pages-Quellrepositorys wird ein Grenzwert von 1 GB empfohlen. Weitere Informationen findest du unter Informationen zu großen Dateien auf GitHub.
-
Veröffentlichte GitHub Pages-Websites dürfen nicht größer als 1 GB sein.
-
GitHub Pages-Bereitstellungen führen zu einem Timeout, wenn sie länger als 10 Minuten dauern.
-
GitHub Pages-Websites besitzen eine weiche Bandbreitenbegrenzung von 100 GB pro Monat.
-
GitHub Pages-Websites besitzen eine weiche Begrenzung von 10 Builds pro Stunde. Dieser Grenzwert gilt nicht, wenn Sie Ihre Website mit einem benutzerdefinierten GitHub Actions -Workflow erstellen und veröffentlichen.
-
Um eine konsistente Dienstqualität für alle GitHub Pages-Websites bereitzustellen, können Ratenbegrenzungen gelten. Diese Ratenbegrenzungen sollen nicht die legitimen Verwendungen von GitHub Pages beeinträchtigen. Wenn deine Anforderung die Ratenbegrenzung auslöst, erhältst du eine entsprechende Antwort mit dem HTTP-Statuscode
429
sowie einen informativen HTML-Text.
Wenn Ihre Website diese Nutzungskontingente überschreitet, kann Ihre Website allenfalls nicht unterstützt werden oder Sie erhalten eine höfliche E-Mail von GitHub-Support, in der Strategien vorgeschlagen werden, um die Auswirkungen Ihrer Website auf unsere Server zu reduzieren. Dazu zählen das Einsetzen eines Drittanbieter-CDNs (Content Distribution Networks) vor ihrer Website, die Nutzung anderer GitHub-Funktionen, beispielsweise Veröffentlichungen, oder der Wechsel zu einem anderen Hosting-Dienst, der möglicherweise besser zu deinen Anforderungen passt.
MIME-Typen auf GitHub Pages
Ein MIME-Typ ist ein Header, den ein Server an einen Browser übermittelt und der Informationen zur Art und zum Format der Dateien enthält, die der Browser angefordert hat. GitHub Pages unterstützt mehr als 750 MIME-Typen bei Tausenden von Dateierweiterungen. Die Liste der unterstützten MIME-Typen wird aus dem Mime-db-Projekt generiert.
Zwar kannst du keine benutzerdefinierten MIME-Typen für einzelne Dateien oder Repositorys festlegen, aber du kannst MIME-Typen für die Verwendung auf GitHub Pages hinzufügen oder ändern. Weitere Informationen findest du in den Mime-db-Richtlinien.
Datensammlung
Wenn eine GitHub Pages-Website besucht wird, wird die IP-Adresse des Besuchers zu Sicherheitszwecken protokolliert und gespeichert, unabhängig davon, ob sich der Besucher bei GitHub angemeldet hat oder nicht. Weitere Informationen zu den Sicherheitspraktiken von GitHub findest du unter GitHub-Datenschutzbestimmungen.
Weiterführende Themen
- GitHub Pages für GitHub Skills
- REST-API-Endpunkte für Repositorys