Что делать с рекомендацией использовать домен `www` на страницах GitHub? - PullRequest
1 голос
/ 09 июня 2019

Если вы посмотрите документацию для страниц GitHub, у нее есть довольно сильная рекомендация использовать домен www для вашего пользовательского домена, размещенного на страницах GitHub.

Отсюда: https://help.github.com/en/articles/about-supported-custom-domains#www-subdomains

Субдомен www - это наиболее часто используемый тип субдомена, в котором WWW означает Всемирную паутину. Например, www.example.com является Субдомен www, поскольку он содержит часть субдомена www.

Мы настоятельно рекомендуем использовать поддомен www по следующим причинам:

  • Это дает вашему сайту GitHub Pages возможность пользоваться нашей сетью доставки контента.
  • Он более стабилен, поскольку на него не влияют изменения IP-адресов серверов GitHub.
  • Страницы будут загружаться значительно быстрее, поскольку защита от атак типа «отказ в обслуживании» может быть реализована более эффективно.

Означает ли это, что если я не использую домен www, я не получу преимущества защиты от атак CDN или DDOS?

Какова техническая причина, по которой здесь существует разница между www и не www доменом?

Ответы [ 2 ]

2 голосов
/ 09 июня 2019

DNS не обеспечивает надежный механизм для пересылки в верхних / корневых записях (например, example.com), но для поддоменов (CNAME). На практике это означает, что, хотя вы можете указать запись A на один IP-адрес, соответствующий узлу в инфраструктуре Github, они не могут направить поиск DNS для вашей записи Apex на другие IP-адреса, которые ближе к запросу (CDN) или используйте DNS для смягчения последствий атаки (D) DoS.

Некоторые провайдеры DNS предлагают искусственные записи (ALIAS, ANAME), которые имитируют поведение записи CNAME с доменами апекс (например, dnsimple ), но они не являются широко доступными, что создает дополнительную сложность и задержку и не предоставляют одинаковый уровень возможностей географической маршрутизации для Github et al.

1 голос
/ 09 июня 2019

Разница заключается в том, как вы указываете сайт на серверы GitHub в DNS.

Самое простое использование DNS - указать доменное имя любого уровня на IP-адресе, используя запись A. Один и тот же адрес будет использоваться всеми пользователями и может быть изменен только владельцем «зоны», в которую была добавлена ​​запись А. В данном случае вы настраиваете зону своего пользовательского домена.

Более разумный способ - псевдоним для конкретного доменного имени в другой зоне - в данном случае под управлением GitHub - с использованием записи CNAME. Владельцы этой зоны могут затем при необходимости изменить IP-адрес и даже могут дать разные ответы разным пользователям в зависимости от их местоположения (отсюда и ссылка на CDN).

Однако ключевое ограничение заключается в том, что вы не можете использовать CNANE в качестве корня зоны . См. этот вопрос о сбое сервера для технических деталей.

Если у вас есть «example.com», вы можете указать запись A для корня этого домена на один IP-адрес GitHub (или несколько, выбранных посетителями по случайному выбору), но предоставит GitHub больше свободы для маршрутизации. трафик, если вы указываете CNAME для субдомена, например "www.example.com".

...