Источник habr.com

Источник habr.com

Подписываемся:
vk.com/scienceandlive

Быть или не быть Использовать ли www на своём домене?

В течение 20 лет или около того идёт дискуссия, использовать ли Так что, использовать или нет?

Хотя многие взаимозаменяемо используют термины доменное имя и имя хоста, между ними есть разница, и дело не только в семантике. Я немного упрощу это описание, чтобы сконцентрироваться на сути.

Для вас как IT-администратора вашим доменом будет ваша сеть. Разумно дать домену название. Для этого приспособлена система DNS, поэтому вы регистрируете доменное имя, например, example.com. Теперь, под этим доменом у вас будут свои хосты. Каждая машина с подключением к сети считается хостом. Машина для обслуживания документов Вы сделаете то же самое и для остальных хостов в своей сети, есть у вас веб-сервер или нет. Так вы наводите порядок в своей сети.

Чтобы перейти к веб-серверу в домене example.com, вам следует обратится к хосту с именем Кстати, в те времена, когда по Паутине бродили динозавры, виртуальных хостов не существовало. Каждый веб-сервер обслуживал только один веб-сайт (по крайней мере, на один IP-адрес). Имя хоста не имело значения, если оно указывало на правильный IP-адрес.

Голое доменное имя, т.е. имя домена без ‘, с точки зрения DNS, называется origin. По мере роста популярности Всемирной паутины в середине 1990-х годов некоторые администраторы начали указывать в качестве origin тот же IP-адрес, что и хост вместо полного имени хоста.

Тогда пришел SEO

Поскольку example.com и могут указывать на разные IP-адреса, а с января 1997 года на разные веб-сайты на одном IP-адресе специалисты по SEO начали нам рассказывать, что следует выбрать каноническое имя хоста, а остальные должны указывать туда (с кодом состояния HTTP 301).

Интересная статья:  Предлог на в этом случае

Имело смысл выбрать одно имя. Но какое именно? Для SEO это действительно не имеет значения. Главное, чтобы было одно. Но кроме SEO есть и другие проблемы. Читайте дальше.

Как люди понимают URL

Когда я работал в маркетинговом агентстве на рубеже веков, меня беспокоило, что люди могут не понять, что перед ними адрес Всемирной паутины, если мы опустим часть ‘ Я имею в виду, мы только начали пропускать Кроме того, по историческим причинам лично я предпочёл использовать полное правильное имя хоста, т.е.

Сегодня я не думаю, что это важно. Люди поймут, что это веб-адрес, есть там Поскольку одна версия всё равно перенаправляет на другую, не имеет значения, что ваше каноническое имя хоста , а вы используете в печатной рекламе только example.com ради красоты. В то же время, если у вас один из тысяч новых доменов верхнего уровня типа .beer, то есть смысл добавить

Без www проще и красивее

Должен признать: example.com быстрее набирать, легче читать и это просто экономия места. Вполне понятно, что люди начали отбрасывать

Так почему об этом спорят до сих пор?

Почему мы всё ещё обсуждаем, использовать ‘www’ или нет? Пусть каждый использует что хочет, разве нельзя?

Конечно можно.

Но если вы администратор веб-сайта, то, вероятно, хотите сделать обоснованный выбор и заранее продумать некоторые вещи. Например, куки.

Куки передаются в поддомены

Куки, установленные от имени хоста, также будут установлены для всех поддоменов. То есть если сайт на example.com устанавливает файл куки, браузер также отправит этот файл при посещении Звучит неплохо, ведь это тот же сайт, верно? Но куки также отправятся на cdn.example.com, email.example.com, intranet.example.com, thirdpartyservice.example.com и так далее. И многие сторонние сервисы позволяют вам использовать ваш домен именно так.

Интересная статья:  Новости субботы 28 апреля:

Файл куки, установленный с хоста , *не* будет отправлен ни на какой братский хост вроде вышеупомянутых. Ваш браузер понимает, что это не подсервисы, а абсолютно разные сервисы, которые не должны получить доступ к вашим кукам.

Ненужные куки вредят производительности

Способ работы HTTP и cookies заключается в том, что они отправляются из браузера с каждым запросом на веб-сервер. Это означает, что если ваш сайт устанавливает куки для origin (example.com) этот файл также должен быть отправлен на каждый запрос, который вы делаете, например, на email.example.com или intranet.example.com. Это замедляет связь.

Куки могут прочитать третьи лица

Итак, если веб-сайт совпадает с origin (example.com) и использует систему CMS, то после авторизации он будет выдавать куки в ваш браузер, чтобы держать сессию открытой. Затем, когда вы посетите someinternalservice.example.com, администратор этой службы может прочитать этот файл куки, скопировать его и использовать для входа в корпоративную CMS для example.com от вашего имени. То же самое относится и к вендору электронной почты при посещении email.example.com или поставщику CDN, который загружает ресурсы, например, static.example.com, и так далее.

Если вы беспокоитесь о безопасности хоть чего-то на example.com, то обязательно укажите перед ним ‘ Если даже это не убедило вас использовать ‘ Ни HTTPS, ни 2FA не помогут, так как этот куки является волшебным токеном. Однако могут помочь другие меры безопасности, такие как ограничения по IP.

Куки из поддоменов, могут быть общими, если хотите

Если у вас есть служба на поддомене, например, sso.example.com, то RFC 6265 позволяет установить куки для origin и сделать его общим с example.com или Таким образом, отказ от голого домена в качестве имени хоста, на самом деле, даёт вам больше гибкости.

Интересная статья:  Что такое быстро в 2016?

Ограничение DNS

Говоря о гибкости, мы должны снова вернуться к разговору о DNS.

В DNS есть ограничение, что origin должен быть А-записью, то есть указывать на фиксированный IP-адрес.

Когда ваш сайт становится большим и вы перемещаете его на хостинг или хотите направить его на файрвол или сервис защиты от DDoS, то используете запись CNAME, чтобы направить имя хоста на другое непостоянное имя хоста, которым управляет поставщик в зависимости от вашего трафика и потребностей.

Но если сайт размещён на голом домене (example.com), вы не можете этого сделать. Однако нет никакой проблемы указать в CNAME имя хоста с ‘ Так что если хотите какой-либо гибкости масштабирования, сейчас или в будущем, следует с самого начала установить имя хоста с ‘

Вывод: выбираем www

Это важно, используете вы ‘ Я согласен, что голые домены выглядят красивее, но это всего лишь практический вопрос для адресной строки браузера. Вы можете использовать в качестве канонического имени хоста, а в остальных местах просто использовать голый домен. Пользователей всё равно перенаправят куда надо.

Но важные аргументы говорят в пользу использования полного имени хоста с ‘

Так что раз и навсегда положим конец дискуссии: выбор в пользу ‘www’!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *