Бути чи не бути… Використовувати www на своєму домені?

Протягом 20 років або близько того йде дискусія, чи використовувати www в канонічному імені хоста (CNAME) вашого веб-сайту. Так що, використовувати чи ні?

Хоча багато взаємозамінні використовують терміни «доменне ім’я» і «ім’я хоста», між ними є різниця, і справа не тільки в семантиці. Я трохи спрощуючи цей опис, щоб сконцентруватися на суті.

Для вас як IT-адміністратора вашим доменом буде ваша мережа. Розумно дати назва домену. Для цього пристосована система DNS, тому ви реєструєте доменне ім’я, наприклад, example.com. Тепер, під цим доменом у вас будуть свої хости. Кожна машина з підключенням до мережі вважається хостом. Машина для обслуговування документів WWW, природно, отримає у вашому домені ім’я хоста www, так що її повне доменне ім’я (FQDN) www.example.com. Ви зробите те ж саме і для інших хостів у своїй мережі, у вас є веб-сервер чи ні. Так ви наводьте порядок у своїй мережі.

Щоб перейти до веб-сервера в домені example.comвам слід звернутися до хосту з ім’ям www.example.com. До речі, в ті часи, коли по Павутині бродили динозаври, віртуальних хостів не існувало. Кожен веб-сервер обслуговував тільки один веб-сайт (принаймні, на один IP-адресу). Ім’я хоста не мало значення, якщо воно вказувало на правильну IP-адресу.

«Голе доменне ім’я», тобто ім’я домену без ‘www’, як example.comз точки зору DNS, називається origin. У міру зростання популярності Всесвітньої павутини в середині 1990-х років деякі адміністратори почали вказувати в якості origin той же IP-адресу, що й хост www. Це дозволяє відвідувачам сайту вводити в браузері просто example.com замість повного імені хоста.

Тоді прийшов SEO

Оскільки example.com і www.example.com можуть вказувати на різні IP-адреси, а з січня 1997 року на різні веб-сайти на одному IP-адресі — фахівці з SEO почали нам розповідати, що слід вибрати канонічне ім’я хоста, а інші повинні вказувати туди (з кодом стану HTTP 301).

Читайте також  Музика в квартирі. Вбудовування

Мало сенс вибрати одне ім’я. Але яке саме? Для SEO це дійсно не має значення. Головне, щоб було одне. Але крім SEO є й інші проблеми. Читайте далі.

Як люди розуміють URL

Коли я працював в маркетинговому агентстві на рубежі століть, мене турбувало, що люди можуть не зрозуміти, що перед ними адреса Всесвітньої павутини, якщо ми опустимо частина ‘www’. Я маю на увазі, ми тільки почали пропускати “http://”. Крім того, з історичних причин особисто я волів використовувати повне «правильне» ім’я хоста, тобто www.example.com.

Сьогодні я не думаю, що це важливо. Люди зрозуміють, що це веб-адресу, є там www чи ні, коли перед ними широко відомий домен верхнього рівня. Оскільки одна версія все одно перенаправляє на іншу, не має значення, що ваше канонічне ім’я хоста www.example.com, а ви використовуєте в друкованій рекламі тільки example.com заради краси. У той же час, якщо у вас один з тисяч нових доменів верхнього рівня типу .beer, то є сенс додати www з тих же міркувань, що були в маркетингу на рубежі століть.

Без www простіше і красивіше

Мушу визнати: example.com швидше набирати, легше читати і це просто економія місця. Цілком зрозуміло, що люди почали відкидати www — і просто вказувати origin в якості канонічного імені хоста.

Так чому про це сперечаються до цих пір?

Чому ми все ще обговорюємо, використовувати ‘www’ чи ні? Нехай кожен використовує що хоче, хіба не можна?

Звичайно можна.

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

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

Куки, встановлені від імені хоста, також будуть встановлені для всіх піддоменів. Тобто якщо сайт example.com встановлює файл cookie, браузер також відправить цей файл при відвідуванні www.example.com. Звучить непогано, адже це той же сайт, вірно? Але куки також відправляться на cdn.example.com, email.example.com, intranet.example.com, thirdpartyservice.example.com і так далі. І багато сторонні сервіси дозволяють вам використовувати ваш домен саме так.

Читайте також  Зловмисники зламали тисячі роутерів D-link і перенаправляли їх власників на шкідливі ресурси

Файл cookie, встановлений з хоста www.example.com, *не* буде відправлений на «братський» хост кшталт вищезгаданих. Ваш браузер розуміє, що це не «подсервисы», а абсолютно різні сервіси, які не мають отримати доступ до ваших кукам.

Непотрібні cookies шкодять продуктивності

Спосіб роботи HTTP cookies полягає в тому, що вони відправляються з браузера з кожним запитом на веб-сервер. Це означає, що якщо ваш сайт встановлює куки для origin (example.com цей файл також повинен бути відправлений на кожен запит, який ви робите, наприклад, на email.example.com або intranet.example.com. Це уповільнює зв’язок.

Куки можуть прочитати треті особи

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

Якщо ви турбуєтеся про безпеку хоч чогось на example.com, то обов’язково вкажіть перед ним ‘www’. Якщо навіть це не переконало вас використовувати ‘www’, то я не знаю, що може переконати. Ні HTTPS, ні 2FA не допоможуть, так як цей кукі є чарівним токеном. Однак можуть допомогти інші заходи безпеки, такі як обмеження по IP.

Куки з піддоменів, можуть бути загальними, якщо хочете

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

Читайте також  Tor Browser перейшов на кодову базу Firefox Quantum і Photon UI

Обмеження DNS

Говорячи про гнучкість, ми повинні знову повернутися до розмови про DNS.

В DNS є обмеження, що origin повинен бути А-записом, тобто вказувати на фіксований IP-адресу.

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

Але якщо сайт розміщений на голому домені (example.com), ви не можете цього зробити. Однак немає ніякої проблеми вказати в CNAME ім’я хоста з ‘www’. Так що якщо хочете будь-якої гнучкості масштабування, зараз або в майбутньому, слід з самого початку встановити ім’я хоста з ‘www’.

Висновок: вибираємо www

Це важливо, використовуєте ви ‘www’ чи ні. Я згоден, що голі домени виглядають красивіше, але це всього лише практичний питання для адресного рядка браузера. Ви можете використовувати www.example.com в якості канонічного імені хоста, а в інших місцях просто використовувати голий домен. Користувачів все одно перенаправлять куди треба.

Але важливі аргументи говорять на користь використання повного імені хоста з ‘www’: для продуктивності, безпеки і гнучкості.

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

Степан Лютий

Обожнюю технології в сучасному світі. Хоча частенько і замислююся над тим, як далеко вони нас заведуть. Не те, щоб я прям і знаюся на ядрах, пікселях, коллайдерах і інших парсеках. Просто приходжу в захват від того, що може в творчому пориві вигадати людський розум.

You may also like...

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *