Что такое CDN и нужен ли он вашему сайту
CDN — это сеть серверов в разных городах, которая хранит копии файлов вашего сайта и отдаёт их посетителю с ближайшей точки. Картинки, стили и скрипты проходят не тысячи километров до основного сервера, а короткий путь до соседнего узла, поэтому страницы открываются быстрее. Нужен CDN не всем: если аудитория живёт в одном регионе с хостингом, выигрыш будет почти незаметен. Ниже разберём, как это работает, кому подключать, как настроить и на чём обычно ошибаются.
Что такое CDN простыми словами
CDN расшифровывается как Content Delivery Network — сеть доставки контента. Представьте магазин с одним складом в Москве: покупатель из Владивостока ждёт посылку неделю. Если открыть склады в крупных городах и заранее развезти по ним ходовой товар, заказ приедет на следующий день. CDN делает то же самое с файлами сайта.
Основной сервер, на котором живёт сайт, называют источником (origin). Серверы сети в разных городах — узлами, или точками присутствия. Сам сайт при этом никуда не переезжает: он остаётся на вашем хостинге, а CDN работает как слой между ним и посетителями.
Как работает CDN: путь одного запроса
- Посетитель открывает страницу, и браузер запрашивает файл — например, фотографию товара.
- Сеть направляет запрос не на основной сервер, а на ближайший к человеку узел.
- Если копия файла на узле уже есть, он сразу отдаёт её. Это называют попаданием в кэш.
- Если копии нет, узел один раз забирает файл с основного сервера, отдаёт посетителю и сохраняет у себя.
- Все следующие посетители из этого региона получают файл уже с узла, без обращения к вашему хостингу.
Сколько файл хранится на узле, определяет срок жизни кэша — TTL. Его задаёт основной сервер заголовком Cache-Control или вы сами в панели CDN. Когда срок истекает, узел проверяет, не изменился ли файл, и при необходимости скачивает свежую версию. Подробнее о самом механизме — в статье про кэширование сайта.
Какие файлы отдаёт CDN, а какие нет
Сеть доставки лучше всего работает с тем, что одинаково для всех посетителей. Всё, что собирается под конкретного человека, по умолчанию идёт с основного сервера.
| Что отдаёт сайт | Идёт через кэш CDN | Комментарий |
|---|---|---|
| Картинки, видео, шрифты | Да | Главный источник выигрыша: это самая тяжёлая часть страницы |
| Файлы стилей и скриптов | Да | Меняются редко, кэшируются надолго |
| Страницы статей, услуг, карточек товаров | По настройке | Можно кэшировать, если страница одинакова для всех |
| Корзина, личный кабинет, оформление заказа | Нет | Содержимое своё у каждого посетителя, кэшировать нельзя |
| Поиск по сайту, формы, запросы к API | Нет | Ответ формируется в момент запроса |
Что даёт подключение CDN
- Быстрее загрузка в удалённых регионах. Сетевая задержка между Москвой и Дальним Востоком — порядка 100–150 миллисекунд, и она добавляется к каждому соединению. С узлом в своём регионе посетитель её не замечает.
- Меньше нагрузка на хостинг. Большую часть запросов к странице составляют картинки, стили и скрипты. Когда их раздаёт сеть, серверу остаётся только собрать саму страницу.
- Запас на всплески трафика. Реклама, распродажа или упоминание в СМИ дают резкий рост посетителей. Сеть распределяет его по узлам, и основной сервер не падает.
- Базовая защита. Узлы принимают на себя часть мусорных запросов, а многие провайдеры добавляют фильтрацию атак. Это не заменяет полноценную защиту от DDoS, но отсекает простые случаи.
- Современные протоколы и сжатие. CDN обычно из коробки включает HTTP/2 и HTTP/3, сжатие Brotli, а у части провайдеров — автоматическую конвертацию картинок в WebP.
Скорость загрузки влияет и на поведение посетителей, и на поиск: она входит в показатели Core Web Vitals, которые учитывают поисковые системы.
Чего CDN не исправит
Сеть доставки ускоряет передачу готовых файлов. Если страница долго собирается на сервере — из-за медленных запросов к базе, тяжёлых плагинов или слабого тарифа, — посетитель всё равно будет ждать ответа, просто картинки после этого загрузятся быстрее.
CDN — последний шаг ускорения, а не первый. Сначала сжимают изображения, включают кэш и убирают лишние скрипты, и только потом подключают сеть доставки.
Не поможет CDN и с огромными неоптимизированными фотографиями: пятимегабайтный баннер останется пятимегабайтным, с какого бы узла он ни шёл. С чего начинать ускорение, мы разобрали в чек-листе как ускорить сайт и в материале про оптимизацию картинок.
Кому CDN нужен, а кому нет
| Ситуация | Нужен ли CDN | Почему |
|---|---|---|
| Сайт услуг в одном городе, хостинг в России | Скорее нет | Посетители и сервер рядом, задержка мала |
| Интернет-магазин с доставкой по всей стране | Да | Аудитория от Калининграда до Владивостока, много фото товаров |
| Сайт с зарубежной аудиторией | Да | Расстояние до сервера — основная причина медленной загрузки |
| Медиа, блог с видео, портфолио с большими фото | Да | Много тяжёлой статики |
| Сайт с резкими пиками: акции, сезон, реклама на ТВ | Да | Сеть сглаживает нагрузку на сервер |
| Лендинг под рекламу на один регион | Скорее нет | Дешевле и полезнее сжать картинки и настроить кэш |
| Сервер не справляется, страницы собираются по 3–5 секунд | Сначала нет | Проблема в коде или тарифе, CDN её не решит |
Как понять, что сайту мешает расстояние
Прежде чем платить за сеть доставки, стоит убедиться, что дело именно в географии. На это уходит полчаса.
- Откройте в Яндекс Метрике отчёт по географии и посмотрите, из каких регионов приходят посетители. Если 80–90% — ваш город и соседние области, CDN мало что изменит.
- Сравните в Метрике время загрузки страниц по регионам. Заметная разница между «домашним» регионом и удалёнными — признак того, что мешает расстояние.
- Проверьте сайт сервисом измерения скорости из нескольких точек: из города, где стоит сервер, и из удалённого. Смотрите на время до первого байта и полную загрузку.
- Оцените вес страницы. Если картинки, видео и шрифты занимают больше половины объёма, сеть даст ощутимый эффект.
Как подключить CDN: пошагово
Есть два способа. Первый — вынести в сеть только статику: файлы начинают открываться с отдельного адреса вроде cdn.site.ru. Второй — пропустить через CDN весь сайт целиком, тогда сеть принимает все запросы и сама решает, что отдать из кэша, а что передать серверу. Первый способ проще и безопаснее для старта, второй даёт больше возможностей, включая защиту от атак.
- Выберите провайдера и создайте в его панели ресурс, указав адрес своего сайта как источник.
- Добавьте DNS-запись, которую выдаст провайдер: обычно это CNAME для поддомена
cdn. Что это за записи и где их менять, мы объясняли в статье про DNS-записи. - Подключите SSL-сертификат для нового адреса. Большинство провайдеров выпускают бесплатный сертификат автоматически.
- Задайте сроки хранения: для картинок, шрифтов и файлов с версией в имени — от месяца, для страниц — минуты или часы.
- Переключите сайт на отдачу статики с адреса CDN. В популярных CMS это делается плагином или одной настройкой, в самописных проектах — через параметр адреса статических файлов.
- Проверьте результат: откройте сайт, в инструментах разработчика браузера найдите картинку и посмотрите заголовки ответа. Провайдеры отмечают попадание в кэш заголовком вроде
X-Cache: HIT. - Убедитесь, что не сломались формы, корзина и авторизация, и повторите замер скорости из удалённого региона.
Как выбрать CDN-провайдера
- Узлы там, где ваша аудитория. Для российского сайта важны точки присутствия в регионах России, а не общее число узлов в мире.
- Стабильность работы в России. Доступ к некоторым зарубежным сетям у российских пользователей нестабилен. Если аудитория в РФ, надёжнее выбирать провайдера с российской инфраструктурой.
- Понятная тарификация. Обычно платят за объём переданного трафика, иногда за число запросов. Оцените месячный трафик сайта заранее, чтобы счёт не стал сюрпризом.
- Сброс кэша. Должна быть возможность быстро очистить отдельный файл или весь кэш — вручную и через API.
- Бесплатный SSL и поддержка HTTP/3. Сегодня это базовый набор, доплачивать за него не стоит.
- Оптимизация изображений. Автоматическое сжатие и конвертация в WebP экономят и трафик, и время разработчика.
- Статистика. Доля запросов из кэша, трафик по регионам и ошибки помогают понять, работает ли сеть так, как задумано.
Часть хостингов включает CDN в тариф или подключает его в один клик из панели — для небольшого проекта это самый простой вариант.
Частые ошибки при подключении
- Кэшируют личные страницы. Если через CDN идёт весь сайт и правила настроены грубо, один посетитель может увидеть корзину или кабинет другого. Страницы с персональными данными исключают из кэша в первую очередь.
- Забывают сбросить кэш после обновления. Вы поменяли стили, а посетители неделю видят старую версию. Решение — версия в имени файла или очистка кэша при каждом релизе.
- Создают дубли для поисковиков. Если по адресу CDN открываются не только файлы, но и страницы сайта, в индекс попадают копии. Поддомен для статики закрывают от индексации или отдают с него только файлы.
- Получают смешанный контент. Сайт работает по HTTPS, а статика подключена по HTTP — браузер блокирует такие файлы, и страница ломается.
- Ставят слишком короткий срок хранения. При TTL в несколько минут узлы постоянно ходят на основной сервер, и сеть почти не даёт выигрыша.
- Не проверяют результат. CDN подключён, но из-за заголовков сервера файлы не кэшируются. Без проверки заголовков и статистики этого можно не заметить месяцами.
Чек-лист перед подключением CDN
- Проверили в Метрике, что заметная доля посетителей — из удалённых от сервера регионов.
- Сжали изображения и включили кэширование на самом сайте.
- Убедились, что страница собирается на сервере быстро, без CDN.
- Выбрали провайдера с узлами в регионах вашей аудитории.
- Составили список страниц, которые нельзя кэшировать: корзина, кабинет, оформление заказа.
- Продумали, как сбрасывать кэш при обновлении сайта.
- Запланировали замер скорости до и после подключения.
Коротко
CDN раздаёт копии файлов сайта с серверов, ближайших к посетителю. Он оправдан, когда аудитория разбросана по стране или миру, на сайте много тяжёлой статики или случаются всплески трафика. Небольшому сайту с местной аудиторией важнее быстрый хостинг, сжатые картинки и настроенный кэш.
Не знаете, упирается сайт в географию или в сервер — напишите нам: посмотрим замеры, подскажем, нужен ли CDN, и подберём тариф хостинга без переплаты за лишнее.
Подобрать хостинг в CasperLab
Поможем подобрать решение под вашу задачу и рассчитаем стоимость без обязательств.
Подобрать хостинг