23.01.19 UPDATE:
Die Dinge haben sich seit meiner letzten Antwort ziemlich verändert (zum Besseren). Diese aktualisierte Antwort zeigt Ihnen, wie Sie Folgendes konfigurieren:
- Wurzelspitze (example.com)
- Subdomain (www.example.com)
- HTTPS (optional, aber dringend empfohlen)
Am Ende werden alle Anfragen an example.coman https://www.example.com weitergeleitet (oder an http: //, wenn Sie sich dafür entscheiden, HTTPS NICHT zu verwenden). Ich benutze immer wwwals meine letzte Landung. Warum ( 1 , 2 ) ist für eine andere Diskussion.
Diese Antwort ist lang, aber nicht kompliziert. Ich war aus Gründen der Klarheit ausführlich, da die GitHub-Dokumente zu diesem Thema nicht klar oder linear sind.
Schritt 1: Aktivieren Sie GitHub-Seiten in den GitHub-Einstellungen
- Klicken Sie in Ihrem Repo auf die
Registerkarte
- Scrollen Sie nach unten zum
GitHub PagesAbschnitt. Sie haben zwei Möglichkeiten:
- Die Auswahl
master branchwird /README.mdals Ihr Web behandelt index.html. Die Auswahl master branch /docs folderwird /docs/README.mdals Ihr Web behandelt index.html.
- Wähle ein Thema.
- Warten Sie eine Minute, während GitHub Ihre Website veröffentlicht. Überprüfen Sie, ob es funktioniert, indem Sie auf den Link neben klicken
Your site is ready to be published at
Schritt 2: Geben Sie in den GitHub-Einstellungen eine benutzerdefinierte Domäne an
Geben Sie hier Ihren benutzerdefinierten Domainnamen ein und klicken Sie auf save:

Dies ist ein subtiler, aber wichtiger Schritt.
- Wenn die benutzerdefinierte Domain, die Sie Ihrer GitHub Pages-Site hinzugefügt haben, lautet
example.com, www.example.comwird zu weitergeleitetexample.com
- Wenn die benutzerdefinierte Domain, die Sie Ihrer GitHub Pages-Site hinzugefügt haben, lautet
www.example.com, example.comwird zu weitergeleitet www.example.com.
Wie bereits erwähnt, empfehle ich, immer bei zu landen, wwwdamit ich www.example.comwie oben abgebildet eintreten kann.
Schritt 3: Erstellen Sie DNS-Einträge
Erstellen Sie in der Webkonsole Ihres DNS-Anbieters vier AEinträge und einen CNAME.
ADatensätze für @(aka root apex):
Bei einigen DNS-Anbietern müssen Sie angeben @, bei anderen (wie AWS Route 53) lassen Sie die Subdomain leer, um anzuzeigen @. In beiden Fällen sind dies die Azu erstellenden Datensätze:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
- Erstellen Sie einen
CNAMEDatensatz, auf den www.example.com verweist YOUR-GITHUB-USERNAME.github.io.
Dies ist der verwirrendste Teil.
Beachten Sie YOUR-GITHUB-USERNAME NICHT den GitHub-Repo-Namen! Der Wert von YOUR-GITHUB-USERNAMEwird durch diese Tabelle bestimmt .
Für eine Benutzerseiten- Site (höchstwahrscheinlich das, was Sie sind) lautet der CNAMEEintrag wie folgt username.github.io:

Für eine Site auf Organisationsseiten lautet derCNAME Eintrag wie folgt orgname.github.io:

Schritt 5: Bestätigen Sie die DNS-Einträge
Bestätigen Sie Ihre AAufzeichnungen durch Ausführen dig +noall +answer example.com. Es sollte die vier 185.x.x.xeingegebenen IP-Adressen zurückgeben.
Bestätigt Ihren CNAMEDatensatz durch Ausführen dig www.example.com +nostats +nocomments +nocmd. Es sollte a zurückgebenCNAME YOUR-GITHUB-USERNAME.github.io
Es kann ungefähr eine Stunde dauern, bis diese DNS-Einträge aufgelöst / weitergegeben werden. Sobald dies der Fall ist, öffnen Sie Ihren Browser für http://example.comund er sollte zu weiterleitenhttp://www.example.com
Schritt 6: SSL (HTTPS) -Konfiguration. Optional, aber sehr zu empfehlen
Nachdem die benutzerdefinierte Domain funktioniert hat, kehren Sie zu den Repo-Einstellungen zurück. Wenn Sie die Einstellungsseite bereits geöffnet haben, aktualisieren Sie die Seite hart.
Wenn sich unter dem Enforce HTTPSKontrollkästchen eine Meldung befindet , die besagt, dass sie noch verarbeitet wird, müssen Sie warten. Möglicherweise müssen Sie auch die saveSchaltfläche im Custom domainAbschnitt drücken , um die Enforce HTTPSVerarbeitung zu starten .
Sobald die Verarbeitung abgeschlossen ist, sollte es folgendermaßen aussehen:

Klicken Sie einfach auf das Enforce HTTPSKontrollkästchen und zeigen Sie mit Ihrem Browser auf https://example.com. Es sollte umleiten und öffnenhttps://www.example.com
DAS IST ES!
GitHub hält Ihr HTTPS-Zertifikat automatisch auf dem neuesten Stand UND sollte den Apex behandeln, wwwum über HTTPS umzuleiten.
Hoffe das hilft!!
...
Alte (vor dem 23.01.19) Antwort
Also habe ich es herausgefunden. James McLaughlin gab mir den Anstoß, den ich brauchte.
So richten Sie eine benutzerdefinierte Domain für ein Gh-Pages-Projekt-Seiten-Repo ein, das www.IhreDomain.com und IhreDomain.com verwaltet (vorausgesetzt, Sie haben bereits einen Gh-Seiten-Zweig in Ihrem Repo):
- Von Ihrem Projekt-Repo, Gh-Pages-Zweig. Erstellen Sie eine CNAME-Datei mit dem Inhalt
yourdomain.com. Commit dann drücken.
- Richten Sie in Ihrem DNS-Manager zwei
cnameEinträge ein. Eine für die Wurzelspitze (@) und eine für www. Beide zeigen auf YOURusername.github.io. Wenn Ihr DNS-Anbieter keine ALIASEinträge auf der Stammspitze (@) unterstützt, erstellen Sie einfach AEinträge, die auf 192.30.252.153und verweisen192.30.252.154
Warten Sie, bis Ihre Nameserver aktualisiert sind:
dig yourdomain.com +nostats +nocomments +nocmd