MISE À JOUR DU 23/01/19:
Les choses ont un peu changé (pour le mieux) depuis ma dernière réponse. Cette réponse mise à jour vous montrera comment configurer:
- Apex racine (example.com)
- Sous-domaine (www.example.com)
- HTTPS (facultatif mais fortement encouragé)
Au final, toutes les demandes example.com
seront redirigées vers https://www.example.com (ou http: // si vous choisissez de NE PAS utiliser HTTPS). J'utilise toujours www
comme atterrissage final. Pourquoi ( 1 , 2 ), est pour une autre discussion.
Cette réponse est longue mais n'est pas compliquée. J'étais bavard pour plus de clarté car les documents GitHub sur ce sujet ne sont pas clairs ou linéaires.
Étape 1: activer les pages GitHub dans les paramètres GitHub
- Depuis votre repo, cliquez sur l' onglet
- Faites défiler jusqu'à la
GitHub Pages
section. Vous avez deux options:
- Choisir
master branch
sera traité /README.md
comme votre site Web index.html
. Choisir master branch /docs folder
sera traité /docs/README.md
comme votre site Web index.html
.
- Choisissez un thème.
- Attendez une minute pendant que GitHub publie votre site. Vérifiez que cela fonctionne en cliquant sur le lien à côté de
Your site is ready to be published at
Étape 2: spécifier un domaine personnalisé dans les paramètres GitHub
Saisissez votre nom de domaine personnalisé ici et cliquez sur save
:
Il s'agit d'une étape subtile mais importante.
- Si le domaine personnalisé que vous avez ajouté à votre site GitHub Pages est
example.com
, alors www.example.com
redirigera versexample.com
- Si le domaine personnalisé que vous avez ajouté à votre site GitHub Pages est
www.example.com
, example.com
sera redirigé vers www.example.com
.
Comme mentionné précédemment, je recommande de toujours atterrir à www
donc je suis entré www.example.com
comme illustré ci-dessus.
Étape 3: créer des entrées DNS
Dans la console Web de votre fournisseur DNS, créez quatre A
enregistrements et un CNAME
.
A
Enregistrements pour @
(aka racine apex):
Certains fournisseurs DNS vous demanderont de spécifier @
, d'autres (comme AWS Route 53) vous laisserez le sous-domaine vide pour indiquer @
. Dans les deux cas, ce sont les A
enregistrements à créer:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
- Créez un
CNAME
enregistrement vers lequel pointez www.example.com YOUR-GITHUB-USERNAME.github.io
.
C'est la partie la plus déroutante.
Notez le YOUR-GITHUB-USERNAME
NOT le nom du dépôt GitHub! La valeur de YOUR-GITHUB-USERNAME
est déterminée par ce graphique .
Pour un site de pages utilisateur (probablement ce que vous êtes), l' CNAME
entrée sera username.github.io
, par exemple:
Pour un site de pages Organisation , l' CNAME
entrée sera orgname.github.io
, par exemple:
Étape 5: confirmer les entrées DNS
Confirmez vos A
enregistrements en exécutant dig +noall +answer example.com
. Il doit renvoyer les quatre 185.x.x.x
adresses IP que vous avez saisies.
Confirme votre CNAME
dossier en exécutant dig www.example.com +nostats +nocomments +nocmd
. Il doit renvoyer unCNAME YOUR-GITHUB-USERNAME.github.io
La résolution / propagation de ces entrées DNS peut prendre environ une heure. Une fois qu'ils l'ont fait, ouvrez votre navigateur http://example.com
et il devrait rediriger vershttp://www.example.com
Étape 6: Configuration SSL (HTTPS). Facultatif, mais fortement recommandé
Une fois que le domaine personnalisé fonctionne, revenez aux paramètres de dépôt. Si la page des paramètres est déjà ouverte, actualisez la page en dur.
S'il y a un message sous la Enforce HTTPS
case à cocher, indiquant qu'il est toujours en cours de traitement, vous devrez attendre. Vous devrez peut-être également save
appuyer sur le bouton dans la Custom domain
section pour lancer le Enforce HTTPS
traitement.
Une fois le traitement terminé, il devrait ressembler à ceci:
Cliquez simplement sur la Enforce HTTPS
case à cocher et pointez votre navigateur vers https://example.com
. Il doit rediriger et ouvrirhttps://www.example.com
C'EST ÇA!
GitHub gardera automatiquement votre certificat HTTPS à jour ET devrait gérer l'apex pour www
rediriger via HTTPS.
J'espère que cela t'aides!!
...
Ancienne réponse (avant le 23/01/19)
Alors je l'ai compris. James McLaughlin m'a donné le coup de pouce dont j'avais besoin.
Pour configurer un domaine personnalisé pour un référentiel de pages de projet gh-pages qui gère www.votredomaine.com et votredomaine.com (en supposant que vous avez déjà une branche gh-pages sur votre référentiel):
- Depuis votre dépôt de projet, branche gh-pages. Créez un fichier CNAME avec le contenu
yourdomain.com
. Validez puis poussez.
- Dans votre gestionnaire DNS, configurez deux
cname
enregistrements. Un pour l'apex racine (@) et un pour www. Les deux pointent du doigt YOURusername.github.io
. Si votre fournisseur DNS ne prend PAS en charge les ALIAS
enregistrements sur le sommet racine (@), créez simplement des A
enregistrements qui pointent vers 192.30.252.153
et192.30.252.154
Attendez la mise à jour de vos serveurs de noms:
dig yourdomain.com +nostats +nocomments +nocmd