1/23/19 ОБНОВЛЕНИЕ:
С момента моего последнего ответа все немного изменилось (в лучшую сторону).Этот обновленный ответ покажет вам, как настроить:
- Root Apex (example.com)
- Субдомен (www.example.com)
- HTTPS (необязательно, но настоятельно рекомендуется)
В конце концов все запросы к example.com
будут перенаправлены на https://www.example.com (или http: //, если вы решите НЕ использовать HTTPS),Я всегда использую www
в качестве моей последней посадки.Почему ( 1 , 2 ), для другого обсуждения.
Этот ответ длинный, но он не сложный.Я был многословен для ясности, поскольку документы GitHub по этой теме не являются четкими или линейными.
Шаг 1: Включите страницы GitHub в настройках GitHub
- В репозитории нажмите на tab
- Scroll down to the
GitHub Pages
section. You have two options:
- Choosing
master branch
will treat /README.md
as your web index.html
. Choosing master branch /docs folder
will treat /docs/README.md
as your web index.html
.
- Choose a theme.
- Wait a minute while GitHub publishes your site. Verify it works by clicking on the link next to
Your site is ready to be published at
Step 2: Specify custom domain in GitHub settings
Enter your custom domain name here and hit save
:
This is a subtle, but important step.
- If the custom domain you added to your GitHub Pages site is
example.com
, then www.example.com
will redirect to example.com
- If the custom domain you added to your GitHub Pages site is
www.example.com
, then example.com
will redirect to www.example.com
.
As mentioned before, I recommend always landing at www
so I entered www.example.com
as pictured above.
Step 3: Create DNS entries
In your DNS provider's web console, create four A
records and one CNAME
.
A
Records for @
(aka root apex):
Some DNS providers will have you specify @
, others (like AWS Route35) you will оставьте субдомен пустым , чтобы указать @
.В любом случае это записи A
для создания:
185.199.108.153
185.199.109.153
185.199.110.153
185.199.111.153
Создайте запись
CNAME
, чтобы указать www.example.com на
YOUR-GITHUB-USERNAME.github.io
.
Это самая запутанная часть.
Обратите внимание на YOUR-GITHUB-USERNAME
NOT имя репозитория GitHub!Значение YOUR-GITHUB-USERNAME
определяется на этом графике .
Для Пользовательских страниц сайта (скорее всего, кто вы), CNAME
запись будет username.github.io
, например:
For a Organization pages site, CNAME
entry will be orgname.github.io
, ex:
Step 5: Confirm DNS entries
Confirm your A
records by running dig +noall +answer example.com
. It should return the four 185.x.x.x
IP addresses you entered.
Confirms your CNAME
record by running dig www.example.com +nostats +nocomments +nocmd
. It should return a CNAME YOUR-GITHUB-USERNAME.github.io
It may take an hour or so for these DNS entries to resolve/propagate. Once they do, open up your browser to http://example.com
and it should re-direct to http://www.example.com
Step 6: SSL (HTTPS) Configuration. Optional, but highly recommended
After you have the custom domain working, go back to the repo settings. If you already have the settings page open, hard refresh the page.
If there is a message under the Enforce HTTPS
checkbox, stating that it is still processing you will need to wait. You may also need to hit the save
button in the Custom domain
section to kick off the Enforce HTTPS
processing.
Once processing is completed, it should look like this:
Просто установите флажок Enforce HTTPS
и укажите в браузере https://example.com
.Он должен перенаправить и открыть https://www.example.com
ЭТО ЭТО!
GitHub будет автоматически поддерживать ваш HTTPS-сертификат в актуальном состоянии И должен обрабатывать апекс до www
перенаправления по HTTPS.
Надеюсь, это поможет !!
...
Старый (до 23.01.19) ответ
Так что я понял это. Джеймс Маклафлин дал мне толчок, который мне был нужен.
Чтобы настроить собственный домен для репозитория Project Pages gh-pages, который обрабатывает www.yourdomain.com и yourdomain.com (предполагается, что у вас уже естьветка gh-pages в вашем репо):
- Из репозитория вашего проекта, ветка gh-pages.Создайте файл CNAME с содержанием
yourdomain.com
.Подтвердите и нажмите. - В вашем диспетчере DNS настройте две
cname
записи.Один для корневого апекса (@) и один для www.Оба указывают на YOURusername.github.io
.Если ваш DNS-провайдер НЕ поддерживает ALIAS
записи в корневой вершине (@), просто создайте A
записи, которые указывают на 192.30.252.153
и 192.30.252.154
Подождите, пока обновятся серверы имен:
dig yourdomain.com +nostats +nocomments +nocmd