Страницы GitHub: настройка пользовательского домена

У меня есть страница организации, работающая в GitHub, и все работает, но я немного смущен. Я бы хотел понять процесс, поскольку статья справки GitHub относится к использованию их услуг CDN и DoS, так что несите меня.

Шаг 1: Создан файл CNAME в репо с доменом example.com '

Шаг 2: Схватил IP-адрес от dig example.github.io +nostats +nocomments +nocmd

Шаг 3: Введенный IP-адрес с шага 2 в запись "A" (см. рисунок ниже)

Я решил остановиться здесь и посмотреть, где он меня достал, и, к моему удивлению, это, похоже, сделало трюк. Домен example.github.io правильно перенаправляется в домен example.com и отображает содержимое из репо.

Однако мне сообщили, что после реквизита DNS вы можете dig example.com и увидеть запись CNAME, указывающую на example.github.io. Я не вижу этого, и мне не нравится думать, что я не правильно это понял. Любые мысли/комментарии/советы приветствуются, спасибо!

GoDaddy Domain DNS Zone File

Ответ 1

Чтобы воспользоваться преимуществами услуг CDN и DoS, предоставляемых GitHub Pages, вам нужно настроить Поддомен (например, www.example.com или blog.example.com) вместо Apex domain (example.com).

На странице справки GitHub вы указали:

Если вы используете домен apex (example.com) вместо поддомена (www.example.com), а поставщик DNS не поддерживает ALIAS записей, то ваш единственный вариант - использовать записи A для вашего DNS. Эта не даст вам преимуществ нашей Сети доставки контента.

Здесь настройка (похоже, вы используете GoDaddy для DNS), которая будет работать, чтобы ваши рабочие страницы работали по желанию:

DNS zone file on GoDaddy, set up for GitHub Pages

Это фактически для Страница проекта в Организация, но для одного из них вы установите для записи CNAME для www значение organization.github.io, а не что-то вроде organization.github.io/project. Не меняйте запись A для @ (мой по умолчанию - GoDaddy).

Если вы хотите, чтобы ваш домен Apex (example.com) перенаправлялся на новый поддомен (www.example.com), вы можете указать свою Apex на свой поддомен с помощью Переадресация домена следующим образом:

Domain Forwarding on GoDaddy

С помощью этой установки вы сможете воспользоваться GitHub CDN, который, как вы можете заметить, предоставляется через fastly. Здесь, как мой домен выглядит dig:

Domain info for www.jekyllblog.com

Ответ 2

Также можно использовать запись CNAME для домена APEX, используя бесплатную службу DNS, предоставляемую CloudFlare, и в этом случае вы можете также используйте свой домен без www (или любого другого субдомена) и по-прежнему пользуйтесь CDN и DoS.

Я написал пошаговое руководство здесь: Ускорить свой сайт GitHub Pages с помощью CloudFlare

PS: По-видимому, использование записей ALIAS - плохая идея... нажмите здесь, чтобы узнать, почему.

Ответ 3

Записи DNS общедоступны. В этом случае нет способа их маскировки. По тому, как вы это описываете, вы все сделали правильно. Нет ничего, что заставило бы меня задуматься неправильно.