Пользователи с разрешениями администратора для репозитория могут применять ПРОТОКОЛ HTTPS для GitHub Pages сайта.
Сведения о HTTPS и GitHub Pages
Все GitHub Pages сайты, включая сайты, которые правильно настроены с помощью личного домена, поддерживают принудительное применение HTTPS и HTTPS. Дополнительные сведения о пользовательских доменах см. в разделе [AUTOTITLE и О пользовательских доменах и страницах GitHub](/pages/configuring-a-custom-domain-for-your-github-pages-site/troubleshooting-custom-domains-and-github-pages#https-errors).
GitHub Pages сайты, созданные после 15 июня 2016 г. и использующие домены, автоматически обслуживаются по github.io протоколу HTTPS.
Сайты GitHub Pages не должны использоваться для конфиденциальных транзакций, таких как отправка паролей или номеров кредитных карт.
Предупреждение
если ваше предприятие не использует Enterprise Managed Users, GitHub Pages сайты общедоступны в Интернете по умолчанию, даже если репозиторий для сайта является частным или внутренним. Для публикации сайта с закрытым доступом используйте управление доступом. Либо, если в репозитории вашего сайта есть конфиденциальные данные, удалите их перед публикацией. Дополнительные сведения см. в разделе [AUTOTITLE и Сведения о репозиториях](/pages/getting-started-with-github-pages/changing-the-visibility-of-your-github-pages-site).
Примечание.
RFC3280 указывает, что максимальная длина общего имени должна составлять 64 символа. Таким образом, все доменное имя сайта GitHub Pages должно быть меньше 64 символов, чтобы сертификат был успешно создан.
Принудительное применение HTTPS для сайта GitHub Pages
-
На сайте GitHubперейдите в репозиторий сайта.
-
Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".

-
В разделе "Код, планирование и автоматизация" "Код и автоматизация" боковой панели щелкните Pages.
-
В разделе "GitHub Pages", выберите "Применить ПРОТОКОЛ HTTPS".
Устранение неполадок при подготовке сертификатов (ошибка "Сертификат еще не создан")
При настройке или изменении личного домена в параметрах страниц начинается автоматическая проверка DNS. Эта проверка определяет, настроены ли параметры DNS для GitHub автоматического получения сертификата. Если проверка выполнена успешно, GitHub задание отправляет запрос сертификата TLS из Let's Encrypt. При получении допустимого сертификата GitHub автоматически отправляет его на серверы, обрабатывающие завершение TLS для Pages. После успешного завершения этого процесса рядом с именем личного домена отображается флажок.
Процесс может занять некоторое время. Если процесс не завершился в течение нескольких минут после нажатия кнопки Сохранить, попробуйте нажать кнопку Удалить рядом с именем личного домена. Повторно введите доменное имя и нажмите кнопку Сохранить еще раз. Это приведет к отмене и перезапуску процесса подготовки.
Устранение проблем со смешанным содержимым
Если вы включите HTTPS для сайта GitHub Pages , но HTML сайта по-прежнему ссылается на изображения, CSS или JavaScript по протоколу HTTP, то сайт обслуживает смешанное содержимое. Обслуживание смешанного содержимого может сделать сайт менее безопасным и привести к проблемам с загрузкой ресурсов.
Чтобы удалить смешанное содержимое сайта, обеспечьте, чтобы все ресурсы обслуживались по протоколу HTTPS, изменив http:// на https:// в HTML-коде сайта.
Ресурсы обычно находятся в следующих расположениях:
- Если ваш сайт использует Jekyll, ваши HTML-файлы, вероятно, будут найдены в папке
_layouts. - Каскадные таблицы стилей обычно находятся в разделе
<head>HTML-файла. - JavaScript обычно находится в разделе
<head>или непосредственно перед закрывающим тегом</body>. - Изображения часто находятся в разделе
<body>.
Совет
Если вы не можете найти ресурсы в исходных файлах сайта, попробуйте найти исходные файлы http:// вашего сайта в текстовом редакторе или в GitHubней.
Примеры ресурсов, на которые ссылается HTML-файл
| Вид актива | HTTP | HTTPS |
|---|---|---|
| CSS | <link rel="stylesheet" href="http:/ | <link rel="stylesheet" href="https:/ |
| JavaScript | <script type="text/ | <script type="text/ |
| Изображения | <a href="http:/ | <a href="https:/ |
Проверка конфигурации DNS
В некоторых случаях сертификат HTTPS не сможет быть создан из-за конфигурации DNS личного домена. Это может быть вызвано дополнительными записями DNS или записями, не указывающими на IP-адреса.GitHub Pages
Чтобы убедиться, что сертификат HTTPS создается правильно, рекомендуется использовать следующие конфигурации. Любые дополнительные A``AAAA``ANAME``ALIAS, записи с @ узлом или записи, указывающие на www поддомен или CNAME другой настраиваемый поддомен, с которым вы хотите использоватьGitHub Pages, могут предотвратить создание сертификата HTTPS.
| Сценарий | Типы записей DNS | DNS-имя записи | Значения записи DNS |
|---|---|---|---|
| Вершинный домен ( example.com) | A | @ | 185.199.108.153185.199.109.153185.199.110.153185.199.111.153 |
| Вершинный домен ( example.com) | AAAA | @ | 2606:50c0:8000::1532606:50c0:8001::1532606:50c0:8002::1532606:50c0:8003::153 |
| Вершинный домен ( example.com) | |||
ALIAS или ANAME | @ | ||
USERNAME.github.io илиORGANIZATION.github.io | |||
| Поддомен ( www.example.com, | |||
blog.example.com( | CNAME | SUBDOMAIN.example.com. | |
USERNAME.github.io илиORGANIZATION.github.io |