Les personnes disposant d’autorisations d’administrateur sur un dépôt peuvent configurer un domaine personnalisé pour un site GitHub Pages.
À propos de la configuration de domaines personnalisés
Conseil : nous vous recommandons de vérifier votre domaine personnalisé avant de l’ajouter à votre dépôt afin d’améliorer la sécurité et d’éviter les attaques de prise de contrôle. Pour plus d’informations, consultez « Vérification de votre domaine personnalisé pour GitHub Pages ».
Veillez à ajouter votre domaine personnalisé à votre site GitHub Pages avant de configurer votre domaine personnalisé auprès de votre fournisseur DNS. La configuration de votre domaine personnalisé auprès de votre fournisseur DNS sans ajouter votre domaine personnalisé à GitHub peut entraîner la possibilité pour une autre personne d’héberger un site sur un de vos sous-domaines.
La commande dig
, qui peut être utilisée pour vérifier la configuration correcte des enregistrements DNS, n’est pas incluse dans Windows. Pour vérifier que vos enregistrements DNS sont configurés correctement, vous pouvez utiliser la commande PowerShell Resolve-DnsName
ou installer BIND.
Remarque : La propagation des modifications DNS peut prendre jusqu’à 24 heures.
Configuration d’un domaine apex
Pour configurer un domaine apex, comme example.com
, vous devez configurer un domaine personnalisé dans vos paramètres de dépôt et au moins un enregistrement ALIAS
, ANAME
ou A
avec votre fournisseur DNS.
-
Dans GitHub, accédez au dépôt de votre site.
-
Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.
-
Dans la section « Code et automatisation » de la barre latérale, cliquez sur Pages.
-
Sous « Domaine personnalisé », entrez votre domaine personnalisé, puis cliquez sur Enregistrer. Si vous publiez votre site à partir d’une branche, cela crée un commit qui ajoute un fichier
CNAME
directement à la racine de votre branche source. Si vous publiez votre site avec un flux de travail GitHub Actions personnalisé, aucun fichierCNAME
n’est créé. Vous devez donc en créer un manuellement (avec uniquement une ligne de texte avec votre domaine personnalisé). Pour plus d’informations sur votre source de publication, consultez « Configuration d’une source de publication pour votre site GitHub Pages ». -
Accédez à votre fournisseur DNS et créez un enregistrement
ALIAS
,ANAME
ouA
. Vous pouvez aussi créer des enregistrementsAAAA
pour la prise en charge d’IPv6. Si vous implémentez le support IPv6, nous vous recommandons vivement d’utiliser un enregistrementA
en plus de votre enregistrementAAAA
, en raison de la lenteur de l’adoption d’IPv6 à l’échelle mondiale. Pour plus d’informations sur la création de l’enregistrement approprié, consultez la documentation de votre fournisseur DNS.-
Pour créer un enregistrement
ALIAS
ouANAME
, faites pointer votre domaine apex vers le domaine par défaut pour votre site. Pour plus d’informations sur le domaine par défaut de votre site, consultez « À propos de GitHub Pages ». -
Pour créer des enregistrements
A
, faites pointer votre domaine apex vers les adresses IP pour GitHub Pages.185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153
-
Pour créer des enregistrements
AAAA
, faites pointer votre domaine apex vers les adresses IP pour GitHub Pages.2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606:50c0:8003::153
Avertissement : nous vous recommandons vivement de ne pas utiliser d’enregistrements DNS génériques, tels que
*.example.com
. Ces enregistrements vous exposent à un risque immédiat de prise de contrôle de domaine, même si vous vérifiez le domaine. Par exemple, si vous vérifiezexample.com
, vous empêchez un tiers d’utilisera.example.com
, mais cette personne peut toujours prendre le contrôle deb.a.example.com
(couvert par l’enregistrement DNS générique). Pour plus d’informations, consultez « Vérification de votre domaine personnalisé pour GitHub Pages ». -
-
Ouvrez TerminalTerminalGit Bash.
-
Pour vérifier que votre enregistrement DNS est correctement configuré, utilisez la commande
dig
, en remplaçant EXAMPLE.COM par votre domaine apex. Vérifiez que les résultats correspondent aux adresses IP pour GitHub Pages ci-dessus.-
Pour les enregistrements
A
:$ dig EXAMPLE.COM +noall +answer -t A > EXAMPLE.COM 3600 IN A 185.199.108.153 > EXAMPLE.COM 3600 IN A 185.199.109.153 > EXAMPLE.COM 3600 IN A 185.199.110.153 > EXAMPLE.COM 3600 IN A 185.199.111.153
-
Pour les enregistrements
AAAA
:$ dig EXAMPLE.COM +noall +answer -t AAAA > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8000::153 > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8001::153 > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8002::153 > EXAMPLE.COM 3600 IN AAAA 2606:50c0:8003::153
N’oubliez pas de vérifier également votre enregistrement
A
.
-
-
Si vous utilisez un générateur de site statique pour générer votre site localement et poussez les fichiers générés vers GitHub, tirez le commit qui a ajouté le fichier CNAME à votre dépôt local. Pour plus d’informations, consultez « Résolution des problèmes liés aux domaines personnalisés et aux pages GitHub Pages ».
-
Pour appliquer un chiffrement HTTPS à votre site, vous pouvez sélectionner Appliquer le protocole HTTPS. Jusqu’à 24 heures peuvent s’écouler avant que cette option soit disponible. Pour plus d’informations, consultez « Sécurisation de votre site GitHub Pages avec HTTPS ».
Configuration d’un domaine apex et de la variante de sous-domaine www
Remarque : La configuration d’un sous-domaine www
avec un domaine apex est recommandée pour les sites web sécurisés HTTPS.
Si vous utilisez un domaine apex comme domaine personnalisé, nous vous recommandons également de configurer un sous-domaine www
. Si vous configurez les enregistrements appropriés pour chaque type de domaine à travers votre fournisseur DNS, GitHub Pages crée automatiquement les redirections entre les domaines. Par exemple, si vous configurez www.example.com
comme domaine personnalisé pour votre site et que vous avez des enregistrements DNS GitHub Pages configurés pour les domaines www
et apex, example.com
redirige vers www.example.com
. Notez que les redirections automatiques s’appliquent uniquement au sous-domaine www
. Les redirections automatiques ne s’appliquent à aucun autre sous-domaine, par exemple, blog
. Pour plus d’informations, consultez « Configuration d’un sous-domaine ».
Accédez à votre fournisseur DNS et créez un enregistrement CNAME
pour le sous-domaine www
qui fait pointer vers votre domaine GitHub Pages par défaut. Par exemple, si votre site se trouve sur <user>.github.io
, vous devez créer un enregistrement CNAME
qui fait pointer www.example.com
vers <user>.github.io
. De même, pour un site d’organisation situé sur <organization>.github.io
, vous devez créer un enregistrement CNAME
qui fait pointer www.example.com
vers <organization>.github.io
. Vérifiez que l’enregistrement CNAME
pointe directement vers <user>.github.io
ou <organization>.github.io
, sans inclure le nom du référentiel.
Pour plus d’informations sur la création de l’enregistrement approprié, consultez la documentation de votre fournisseur DNS. Pour plus d’informations sur le domaine par défaut de votre site, consultez « À propos de GitHub Pages ».
Configuration d’un sous-domaine
Pour configurer un sous-domaine www
ou personnalisé, comme www.example.com
ou blog.example.com
, vous devez ajouter votre domaine dans les paramètres du dépôt. Ensuite, configurez un enregistrement CNAME auprès de votre fournisseur DNS.
-
Dans GitHub, accédez au dépôt de votre site.
-
Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.
-
Dans la section « Code et automatisation » de la barre latérale, cliquez sur Pages.
-
Sous « Domaine personnalisé », entrez votre domaine personnalisé, puis cliquez sur Enregistrer. Si vous publiez votre site à partir d’une branche, cela crée un commit qui ajoute un fichier
CNAME
directement à la racine de votre branche source. Si vous publiez votre site avec un flux de travail GitHub Actions personnalisé, aucun fichierCNAME
n’est créé. Vous devez donc en créer un manuellement (avec uniquement une ligne de texte avec votre domaine personnalisé). Pour plus d’informations sur votre source de publication, consultez « Configuration d’une source de publication pour votre site GitHub Pages ».Remarque : si votre domaine personnalisé est un nom de domaine internationalisé, vous devez entrer la version Punycode encodée.
Pour plus d’informations sur Punycode, consultez Nom de domaine internationalisé.
-
Accédez à votre fournisseur DNS et créez un enregistrement
CNAME
qui fait pointer votre sous-domaine vers le domaine par défaut de votre site. Par exemple, si vous voulez utiliser le sous-domainewww.example.com
pour votre site utilisateur, créez un enregistrementCNAME
qui fait pointerwww.example.com
vers<user>.github.io
. Si vous voulez utiliser le sous-domaineanother.example.com
pour votre site d’organisation, créez un enregistrementCNAME
qui fait pointeranother.example.com
vers<organization>.github.io
. L’enregistrementCNAME
doit toujours pointer vers<user>.github.io
ou vers<organization>.github.io
, à l’exclusion du nom du dépôt. Pour plus d’informations sur la création de l’enregistrement approprié, consultez la documentation de votre fournisseur DNS. Pour plus d’informations sur le domaine par défaut de votre site, consultez « À propos de GitHub Pages ».Avertissement : nous vous recommandons vivement de ne pas utiliser d’enregistrements DNS génériques, tels que
*.example.com
. Ces enregistrements vous exposent à un risque immédiat de prise de contrôle de domaine, même si vous vérifiez le domaine. Par exemple, si vous vérifiezexample.com
, vous empêchez un tiers d’utilisera.example.com
, mais cette personne peut toujours prendre le contrôle deb.a.example.com
(couvert par l’enregistrement DNS générique). Pour plus d’informations, consultez « Vérification de votre domaine personnalisé pour GitHub Pages ». -
Ouvrez TerminalTerminalGit Bash.
-
Pour vérifier que votre enregistrement DNS est correctement configuré, utilisez la commande
dig
, en remplaçant WWW.EXAMPLE.COM par votre sous-domaine.$ dig WWW.EXAMPLE.COM +nostats +nocomments +nocmd > ;WWW.EXAMPLE.COM. IN A > WWW.EXAMPLE.COM. 3592 IN CNAME YOUR-USERNAME.github.io. > YOUR-USERNAME.github.io. 43192 IN CNAME GITHUB-PAGES-SERVER . > GITHUB-PAGES-SERVER . 22 IN A 192.0.2.1
-
Si vous utilisez un générateur de site statique pour générer votre site localement et poussez les fichiers générés vers GitHub, tirez le commit qui a ajouté le fichier CNAME à votre dépôt local. Pour plus d’informations, consultez « Résolution des problèmes liés aux domaines personnalisés et aux pages GitHub Pages ».
-
Pour appliquer un chiffrement HTTPS à votre site, vous pouvez sélectionner Appliquer le protocole HTTPS. Jusqu’à 24 heures peuvent s’écouler avant que cette option soit disponible. Pour plus d’informations, consultez « Sécurisation de votre site GitHub Pages avec HTTPS ».
Remarque : Si vous pointez votre sous-domaine personnalisé vers votre domaine apex, vous rencontrerez des problèmes liés à l’application du protocole HTTPS à votre site web, et vous pouvez rencontrer des problèmes où votre sous-domaine n’atteint pas votre site GitHub Pages.
Enregistrement DNS pour votre domaine personnalisé
Si vous connaissez le processus de configuration de votre domaine pour un site GitHub Pages, vous pouvez utiliser le tableau ci-dessous pour rechercher les valeurs DNS de votre scénario spécifique et les types d’enregistrements DNS pris en charge par votre fournisseur DNS. Pour plus d’informations, notamment comment configurer votre site GitHub Pages sur GitHub et comment vérifier la configuration à l’aide de la commande dig
, reportez-vous aux sections ci-dessus.
Pour configurer un domaine apex, il vous suffit de choisir un seul type d’enregistrement DNS dans le tableau ci-dessous. Pour configurer un domaine apex et un sous-domaine www
(par exemple, example.com
et www.example.com
), configurez le domaine apex, puis le sous-domaine. Pour plus d’informations, consultez « Configuration d’un domaine apex et de la variante de sous-domaine www
».
Avertissement : nous vous recommandons vivement de ne pas utiliser d’enregistrements DNS génériques, tels que *.example.com
. Ces enregistrements vous exposent à un risque immédiat de prise de contrôle de domaine, même si vous vérifiez le domaine. Par exemple, si vous vérifiez example.com
, vous empêchez un tiers d’utiliser a.example.com
, mais cette personne peut toujours prendre le contrôle de b.a.example.com
(couvert par l’enregistrement DNS générique). Pour plus d’informations, consultez « Vérification de votre domaine personnalisé pour GitHub Pages ».
Scénario | Type d’enregistrement DNS | Nom d’enregistrement DNS | Valeur(s) d’enregistrement DNS |
---|---|---|---|
Domaine apex ( example.com ) | A | @ | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
Domaine apex ( example.com ) | AAAA | @ | 2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606:50c0:8003::153 |
Domaine apex ( example.com ) | ALIAS ou ANAME | @ | USERNAME.github.io ouORGANIZATION.github.io |
Sous-domaine ( www.example.com ,blog.example.com ) | CNAME | SUBDOMAIN.example.com. | USERNAME.github.io ouORGANIZATION.github.io |
Suppression d’un domaine personnalisé
Si vous obtenez une erreur relative à la prise d’un domaine personnalisé, vous devrez peut-être supprimer celui-ci d’un autre dépôt.
-
Dans GitHub, accédez au dépôt de votre site.
-
Sous le nom de votre dépôt, cliquez sur Paramètres. Si vous ne voyez pas l’onglet « Paramètres », sélectionnez le menu déroulant , puis cliquez sur Paramètres.
-
Dans la section « Code et automatisation » de la barre latérale, cliquez sur Pages.
-
Sous « Domaine personnalisé », cliquez sur Supprimer.
Sécurisation de votre domaine personnalisé
Si votre site GitHub Pages est désactivé, mais qu’un domaine personnalisé est configuré, il est exposé à un risque de prise de contrôle du domaine. Avoir un domaine personnalisé configuré avec votre fournisseur DNS alors que votre site est désactivé peut potentiellement laisser une autre personne héberger un site sur l’un de vos sous-domaines.
La vérification de votre domaine personnalisé empêche les autres utilisateurs GitHub d’utiliser votre domaine avec leurs dépôts. Si votre domaine n’est pas vérifié et que votre site GitHub Pages est désactivé, vous devez tout de suite mettre à jour ou supprimer vos enregistrements DNS avec votre fournisseur DNS. Pour plus d’informations, consultez « Vérification de votre domaine personnalisé pour GitHub Pages ».