Skip to main content
We publish frequent updates to our documentation, and translation of this page may still be in progress. For the most current information, please visit the English documentation.

Sécurisation de votre site GitHub Pages avec HTTPS

HTTPS ajoute une couche de chiffrement qui empêche d’autres utilisateurs d’espionner ou de falsifier le trafic vers votre site. Vous pouvez appliquer le protocole HTTPS à votre site GitHub Pages pour rediriger en toute transparence toutes les requêtes HTTP vers HTTPS.

GitHub Pages est disponible dans les dépôts publics avec GitHub Free et GitHub Free pour les organisations, et dans les dépôts publics et privés avec GitHub Pro, GitHub Team, GitHub Enterprise Cloud et GitHub Enterprise Server. Pour plus d’informations, consultez « Produits de GitHub ».

Les personnes disposant d’autorisations d’administrateur sur un dépôt peuvent appliquer HTTPS pour un site GitHub Pages.

À propos de HTTPS et de GitHub Pages

Tous les sites GitHub Pages, y compris les sites correctement configurés avec un domaine personnalisé, prennent en charge HTTPS et l’application de HTTPS. Pour plus d’informations sur les domaines personnalisés, consultez « À propos des domaines personnalisés et de GitHub Pages » et « Résolution des problèmes liés aux domaines personnalisés et à GitHub Pages ».

Les sites GitHub Pages ne devraient pas être utilisés pour des transactions sensibles telles que l’envoi de mots de passe ou de numéros de carte de crédit.

Avertissement : des sites GitHub Pages sont disponibles publiquement sur Internet, même si leur dépôt est privé. Si vous avez des données sensibles dans le dépôt de votre site, vous pouvez les supprimer avant publication. Pour plus d’informations, consultez « À propos des dépôts ».

Remarque : RFC3280 indique que la longueur maximale du nom commun doit être de 64 caractères. Par conséquent, le nom de domaine entier de votre site GitHub Pages doit être inférieur à 64 caractères pour qu’un certificat soit correctement créé.

Application du protocole HTTPS pour votre site GitHub Pages

  1. Dans GitHub, accédez au dépôt de votre site. 1. Sous le nom de votre dépôt, cliquez sur Paramètres. Bouton Paramètres du dépôt

  2. Dans la section « Code et automatisation » de la barre latérale, cliquez sur Pages.

  3. Sous « GitHub Pages », sélectionnez Appliquer HTTPS. Case à cocher Appliquer HTTPS

Résolution des problèmes de provisionnement de certificats (erreur de type « Certificat pas encore créé »)

Lorsque vous définissez ou modifiez votre domaine personnalisé dans les paramètres Pages, une vérification DNS automatique commence. Cette vérification détermine si vos paramètres DNS sont configurés pour autoriser GitHub à obtenir automatiquement un certificat. Si la vérification réussit, GitHub met en file d’attente un travail pour demander un certificat TLS à partir de Let's Encrypt. Lors de la réception d’un certificat valide, GitHub le charge automatiquement sur les serveurs qui gèrent l’arrêt TLS pour Pages. Une fois ce processus terminé, une coche s’affiche à côté de votre nom de domaine personnalisé.

Le processus peut prendre du temps. Si le processus n’est pas terminé plusieurs minutes après avoir cliqué sur Enregistrer, essayez de cliquer sur Supprimer en regard de votre nom de domaine personnalisé. Retapez le nom de domaine, puis cliquez à nouveau sur Enregistrer. Cela annule et redémarre le processus de provisionnement.

Résolution des problèmes liés aux contenus mixtes

Si vous activez HTTPS pour votre site GitHub Pages, mais que le code HTML de votre site référence toujours des images, CSS ou JavaScript sur HTTP, votre site gère des contenus mixtes. La prise en charge de contenus mixtes peut rendre votre site moins sécurisé et causer des problèmes de chargement des ressources.

Pour supprimer les contenus mixtes de votre site, vérifiez que toutes vos ressources sont gérées sur HTTPS en remplaçant http:// par https:// dans le code HTML de votre site.

Les ressources se trouvent généralement aux emplacements suivants :

  • Si votre site utilise Jekyll, vos fichiers HTML se trouvent probablement dans le dossier _layouts.
  • CSS se trouve généralement dans la section <head> de votre fichier HTML.
  • JavaScript se trouve généralement dans la section <head> ou juste avant la balise de fermeture </body>.
  • Les images se trouvent souvent dans la section <body>.

Conseil : Si vous ne trouvez pas vos ressources dans les fichiers sources de votre site, essayez de rechercher dans les fichiers sources de votre site http dans votre éditeur de texte ou sur GitHub.

Exemples de ressources référencées dans un fichier HTML

Type de ressourceHTTPHTTPS
CSS<link rel="stylesheet" href="http://example.com/css/main.css"><link rel="stylesheet" href="https://example.com/css/main.css">
JavaScript<script type="text/javascript" src="http://example.com/js/main.js"></script><script type="text/javascript" src="https://example.com/js/main.js"></script>
Image<a href="http://www.somesite.com"><img src="http://www.example.com/logo.jpg" alt="Logo"></a><a href="https://www.somesite.com"><img src="https://www.example.com/logo.jpg" alt="Logo"></a>