Пользователи с разрешениями администратора для репозитория могут настроить личный домен для сайта GitHub Pages.
Сведения о конфигурации личного домена
Tip
Мы рекомендуем проверить личный домен перед добавлением его в репозиторий, чтобы повысить безопасность и избежать атак на переход. Дополнительные сведения см. в разделе Проверка личного домена для GitHub Pages.
Прежде чем настраивать личный домен с помощью поставщика DNS, добавьте личный домен на сайт GitHub Pages. Настройка личного домена с помощью поставщика DNS без добавления личного домена в GitHub Enterprise Cloud может привести к тому, что другой пользователь сможет разместить сайт на одном из поддоменов.
Команда dig
, которую можно использовать для проверки правильности конфигурации записей DNS, не включена в Windows. Чтобы убедиться, что записи DNS настроены правильно, можно использовать Resolve-DnsName
команду PowerShell или установить BIND.
Note
Для распространения изменений DNS может потребоваться до 24 часов.
Настройка домена apex
Чтобы настроить домен apex, например example.com
, необходимо с помощью поставщика DNS настроить личный домен в параметрах репозитория и как минимум одну запись ALIAS
, ANAME
или A
.
-
В GitHub Enterprise Cloudперейдите в репозиторий сайта.
-
Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".
-
В разделе "Код и автоматизация" боковой панели щелкните Pages.
-
В поле "Личный домен" укажите личный домен и нажмите Сохранить. При публикации сайта из ветви будет создана фиксация, которая добавляет
CNAME
файл непосредственно в корневой каталог исходной ветви. Если вы публикуете сайт с пользовательским рабочим процессом GitHub Actions, файл неCNAME
создается, поэтому вам нужно создать один вручную (содержащий только строку текста с личным доменом). Дополнительные сведения о источнике публикации см. в разделе "Настройка источника публикации для сайта GitHub Pages". -
Перейдите к поставщику DNS и создайте запись
ALIAS
,ANAME
илиA
. Вы также можете создавать записиAAAA
для поддержки IPv6. Если вы реализуете поддержку IPv6, мы настоятельно рекомендуем использоватьA
запись в дополнение к вашейAAAA
записи из-за медленного внедрения IPv6 глобально. Дополнительные сведения о создании правильной записи см. в документации поставщика DNS.-
Чтобы создать запись
ALIAS
илиANAME
, укажите свой домен apex в домене по умолчанию для вашего сайта. Дополнительные сведения о домене по умолчанию для вашего сайта см. в разделе "Описание GitHub Pages". -
Чтобы создать записи
A
, укажите свой домен apex в IP-адресе для GitHub Pages.185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153
-
Чтобы создать записи
AAAA
, укажите свой домен apex в IP-адресе для GitHub Pages.2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606:50c0:8003::153
Warning
Настоятельно рекомендуется не использовать подстановочные записи DNS, например
*.example.com
. Эти записи ставят вас под непосредственный риск отработки домена, даже если вы проверяете домен. Например, если проверитьexample.com
это, кто-то не сможет использоватьa.example.com
, но он по-прежнему может взять на себяb.a.example.com
(который рассматривается подстановочными знаками DNS-записи). Дополнительные сведения см. в разделе Проверка личного домена для GitHub Pages. -
-
Откройте ТерминалТерминалGIT Bash.
-
Чтобы проверить правильность настройки записи DNS, используйте команду
dig
, заменив EXAMPLE.COM своим доменом apex. Убедитесь, что результаты соответствуют IP-адресам для GitHub Pages выше.-
Для
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
-
Для
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
Не забудьте также проверить
A
запись.
-
-
Если вы используете генератор статических сайтов для локального создания сайта и отправляете созданные файлы в GitHub Enterprise Cloud, вытяните фиксацию, которая добавила файл CNAME в локальный репозиторий. Дополнительные сведения см. в разделе Устранение неполадок с личными доменами и страницами GitHub.
-
При необходимости, чтобы применить шифрование HTTPS для сайта, выберите Принудительно использовать HTTPS. Этот параметр может стать доступным в течение 24 часов. Дополнительные сведения см. в разделе Защита сайта GitHub Pages с помощью HTTPS.
Настройка домена apex и варианта поддомена www
Note
Настройка поддомена вместе с доменом www
apex рекомендуется для защищенных веб-сайтов HTTPS.
Если вы используете домен вершины в качестве личного домена, рекомендуется также настроить поддомен www
. Если вы настроите правильные записи для каждого типа домена с помощью поставщика DNS, GitHub Pages автоматически создаст перенаправления между доменами. Например, если вы настраиваете www.example.com
в качестве личного домена для сайта, а у вас есть записи DNS GitHub Pages, настроенные для вершины и доменов www
, то example.com
выполняет перенаправление в www.example.com
. Обратите внимание, что автоматические перенаправления применяются только к поддомену www
. Автоматические перенаправления не применяются к другим поддоменам, таким как blog
. Дополнительные сведения см. в статье Настройка поддомена.
Перейдите к поставщику DNS и создайте CNAME
запись для www
поддомена, указывающего на домен GitHub Pages по умолчанию. Например, если ваш сайт расположен<user>.github.io
, необходимо создать записьwww.example.com
, указывающую на <user>.github.io
аналогично, для сайта организации, находящегося на <organization>.github.io
сайте организации, необходимо создать CNAME
CNAME
запись, на которую указывает www.example.com
<organization>.github.io
. Убедитесь, что CNAME
запись указывает непосредственно или <organization>.github.io
<user>.github.io
без включения имени репозитория.
Дополнительные сведения о создании правильной записи см. в документации поставщика DNS. Дополнительные сведения о домене по умолчанию для вашего сайта см. в разделе "Описание GitHub Pages".
Настройка поддомена
Чтобы настроить www
или личный поддомен, например www.example.com
или blog.example.com
, необходимо добавить домен в параметры репозитория. После этого с помощью поставщика DNS настройте запись CNAME.
-
В GitHub Enterprise Cloudперейдите в репозиторий сайта.
-
Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".
-
В разделе "Код и автоматизация" боковой панели щелкните Pages.
-
В поле "Личный домен" укажите личный домен и нажмите Сохранить. При публикации сайта из ветви будет создана фиксация, которая добавляет
CNAME
файл непосредственно в корневой каталог исходной ветви. Если вы публикуете сайт с пользовательским рабочим процессом GitHub Actions, файл неCNAME
создается, поэтому вам нужно создать один вручную (содержащий только строку текста с личным доменом). Дополнительные сведения о источнике публикации см. в разделе "Настройка источника публикации для сайта GitHub Pages".Note
Если личный домен является международным доменным именем, необходимо ввести версию в кодировке Punycode.
Дополнительные сведения о Punycodes см. в разделе "Международное доменное имя".
-
Перейдите к поставщику DNS и создайте запись
CNAME
, указывающую поддомен в домен по умолчанию для сайта. Например, если вы хотите использовать поддоменwww.example.com
для сайта пользователя, создайте записьCNAME
, указывающуюwww.example.com
в<user>.github.io
. Если вы хотите использовать поддоменanother.example.com
для сайта организации, создайте записьCNAME
, указывающуюanother.example.com
в<organization>.github.io
. ЗаписьCNAME
всегда должна указывать в<user>.github.io
или<organization>.github.io
, за исключением имени репозитория. Дополнительные сведения о создании правильной записи см. в документации поставщика DNS. Дополнительные сведения о домене по умолчанию для вашего сайта см. в разделе "Описание GitHub Pages".Warning
Настоятельно рекомендуется не использовать подстановочные записи DNS, например
*.example.com
. Эти записи ставят вас под непосредственный риск отработки домена, даже если вы проверяете домен. Например, если проверитьexample.com
это, кто-то не сможет использоватьa.example.com
, но он по-прежнему может взять на себяb.a.example.com
(который рассматривается подстановочными знаками DNS-записи). Дополнительные сведения см. в разделе Проверка личного домена для GitHub Pages. -
Откройте ТерминалТерминалGIT Bash.
-
Чтобы проверить правильность настройки записи DNS, используйте команду
dig
, заменив WWW.EXAMPLE.COM своим поддоменом.$ 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
-
Если вы используете генератор статических сайтов для локального создания сайта и отправляете созданные файлы в GitHub Enterprise Cloud, вытяните фиксацию, которая добавила файл CNAME в локальный репозиторий. Дополнительные сведения см. в разделе Устранение неполадок с личными доменами и страницами GitHub.
-
При необходимости, чтобы применить шифрование HTTPS для сайта, выберите Принудительно использовать HTTPS. Этот параметр может стать доступным в течение 24 часов. Дополнительные сведения см. в разделе Защита сайта GitHub Pages с помощью HTTPS.
Note
Если указать пользовательский поддомен в домен вершины, вы столкнетесь с проблемами, связанными с применением HTTPS на веб-сайте, и вы можете столкнуться с проблемами, когда поддомен не достигнет вашего сайта GitHub Pages.
Записи DNS для личного домена
Если вы знакомы с процессом настройки домена для сайта GitHub Pages, можно использовать таблицу ниже, чтобы найти значения DNS для конкретного сценария и типы записей DNS, поддерживаемые поставщиком DNS. Дополнительные сведения о том, как настроить сайт GitHub Pages на GitHub Enterprise Cloud и как проверить конфигурацию с помощью dig
команды, см. в разделах выше.
Чтобы настроить домен вершины, необходимо выбрать только один тип записи DNS из приведенной ниже таблицы. Чтобы настроить домен вершины и www
поддомен (например, example.com
и www.example.com
), настройте домен вершины, а затем поддомен. Дополнительные сведения см. в разделе "Настройка верхнего домена и www
варианта поддомена".
Warning
Настоятельно рекомендуется не использовать подстановочные записи DNS, например *.example.com
. Эти записи ставят вас под непосредственный риск отработки домена, даже если вы проверяете домен. Например, если проверить example.com
это, кто-то не сможет использовать a.example.com
, но он по-прежнему может взять на себя b.a.example.com
(который рассматривается подстановочными знаками DNS-записи). Дополнительные сведения см. в разделе Проверка личного домена для GitHub Pages.
Сценарий | Типы записей DNS | DNS-имя записи | Значения записи DNS |
---|---|---|---|
Вершинный домен ( example.com ) | A | @ | 185.199.108.153 185.199.109.153 185.199.110.153 185.199.111.153 |
Вершинный домен ( example.com ) | AAAA | @ | 2606:50c0:8000::153 2606:50c0:8001::153 2606:50c0:8002::153 2606: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 |
Удаление личного домена
Если возникает ошибка о том, что личный домен принимается, может потребоваться удалить личный домен из другого репозитория.
-
В GitHub Enterprise Cloudперейдите в репозиторий сайта.
-
Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".
-
В разделе "Код и автоматизация" боковой панели щелкните Pages.
-
В разделе "Личный домен" нажмите Удалить.
Защита личного домена
Если ваш сайт GitHub Pages отключен, но для него настроен личный домен, существует риск перехвата домена. Если личный домен настраивался с использованием поставщика DNS пока как ваш сайт отключен, это может привести к тому, что другой пользователь разместит сайт в одном из ваших поддоменов.
Проверка вашего личного домена запрещает другим пользователям GitHub использовать ваш домен со своими репозиториями. Если домен не проверен и ваш сайт GitHub Pages отключен, необходимо немедленно обновить или удалить записи DNS с помощью поставщика DNS. Дополнительные сведения см. в разделе "Проверка личного домена для GitHub Pages".