Как бесплатно опубликовать свой сайт с помощью github pages
Введение
В данной статье я хотел бы поделиться инструкцией, которая позволит бесплатно опубликовать ваш сайт (HTML
страничку) на серверах GitHub ипользуя инструмент Pages.
Результатом будет публично доступная web-страница, размещенная на username.github.io
, либо на своем (кастомном) домене 2-го или 3-го уровня.
Пример: hi.artydev.ru
Уровни доменов
Существует 3 уровня доменов:
- 1 или верхний уровень, обозначается точкой (.):
- .ru
- .su
- .com
- 2 уровень обозначается адресом перед доменом верхнего уровня:
- google.com
- yandex.ru
- reg.ru
- 3 уровень:
- mail.google.com
- mail.yandex.ru
- zen.yandex.ru
Репозиторий
Не буду вдаваться в технические детали, думаю все, кто интересуется данным вопросом в состоянии создать репозиторий на github и закоммитить туда несколько файлов.
Создадим новый репозиторий с именем USERNAME.github.io
, в моем случае это meanother.github.io
.
В нем должен находиться файл index.html
, который по дефолту ожидают увидеть такие веб-сервера как NGINX.
После этих трех шагов ваш сайт будет опубликован по адресу meanother.github.io
, вы можете проверить это перейдя на https://meanother.github.io, в результате чего вы будете перенаправлены на hi.artydev.ru .
Создание доменного имени
Существует ряд сервисов, предоставляющих услуги покупки доменных имен, я пользуюсь reg.ru, никакой разницы между ними особо нет, просто так исторически сложилось.
Имя в доменной зоне .ru можно купить за какие-то 200-250 рублей.
Далее необходимо добавить ресурсные записи к вашему домену, вот неплохой гайд (на сайте reg.ru) про добавление различных записей к вашу домену 2 или 3 уровня.
Необходимо добавить 4 записи для IPv4 и 4 для IPv6.
В имени ставим @
, тип записи = А, в IP-адрес - вставляем значения из списка:
- 185.199.108.153
- 185.199.109.153
- 185.199.110.153
- 185.199.111.153
Аналогично для IPv6:
- 2606:50c0:8000::153
- 2606:50c0:8001::153
- 2606:50c0:8002::153
- 2606:50c0:8003::153
На обновление DNS серверов может уйти некоторое время (в моем случае адреса подтянулись в течении 15 минут), проверить можно с помощью команды dig
.
Для IPv4:
$ dig hi.artydev.ru +noall +answer -t A
> ; <<>> DiG 9.10.6 <<>> hi.artydev.ru +noall > +answer -t A
> ;; global options: +cmd
> hi.artydev.ru. 110 IN A 185.199.111.153
> hi.artydev.ru. 110 IN A 185.199.108.153
> hi.artydev.ru. 110 IN A 185.199.109.153
> hi.artydev.ru. 110 IN A 185.199.110.153
Для IPv6:
$ dig hi.artydev.ru +noall +answer -t AAAA
> ; <<>> DiG 9.10.6 <<>> hi.artydev.ru +noall +answer -t AAAA
> ;; global options: +cmd
> hi.artydev.ru. 3600 IN AAAA 2606:50c0:8000::153
> hi.artydev.ru. 3600 IN AAAA 2606:50c0:8003::153
> hi.artydev.ru. 3600 IN AAAA 2606:50c0:8002::153
> hi.artydev.ru. 3600 IN AAAA 2606:50c0:8001::153
После проделанных шагов можно проставить галку на HTTPS.
Завершающим этапом будет верификация доменного имени на github, этап не обязательный, но я рекомендовал бы выполнить его, т.к. занимает это порядка 2 минут.
Подробная инструкция есть в docs.gihub.
Большое спасибо всем за внимание! Если вам интересны подобные рассуждения - подписывайтесь на мой канал artydev & Co.