Loading...

Обучение / E-commerce

CDN для интернет-магазина: практическое руководство по настройке

В онлайн-торговле скорость — это выручка, но знать это — не то же самое, что исправить. Это руководство проходит через реальную работу: поставить магазин за cdn.com.tr, написать правило кэширования для изображений товаров, очищать кэш при изменении цен, автоматизировать это с помощью cdnctl и укрепить магазин к дню кампании.

Updated

CDN для интернет-магазина: практическое руководство по настройке

Почему скорость определяет выручку e-commerce

В обычном магазине медленная очередь раздражает клиентов; в интернете она тихо опустошает корзину. Чем медленнее страницы, тем больше покупателей уходят, не купив, и эффект сильнее всего на мобильных, где сейчас происходит основная часть трафика розницы. Скорость также определяет, сколько людей вообще доберётся до ваших товаров: Google использует page experience — включая Core Web Vitals, такие как Largest Contentful Paint — как сигнал ранжирования, поэтому более быстрый магазин получает и больше органического трафика.

Что замедляет магазины, хорошо известно. Фото товаров, галереи и баннеры доминируют в весе страниц; расстояние между вашим сервером и каждым покупателем добавляет задержку каждому запросу; а платформа магазина пересобирает страницы кодом и запросами к базе при каждом визите. CDN атакует все три проблемы сразу: он кэширует тяжёлые общие ресурсы на edge-серверах рядом с покупателями, а персональные части — корзину, аккаунт, оформление заказа — передаёт напрямую в магазин, чтобы цены и наличие оставались верными. Остальная часть руководства — конкретная настройка на cdn.com.tr, шаг за шагом.

Шаг 1 — Поставьте магазин за CDN

CDN для интернет-магазина: практическое руководство по настройке — Шаг 1 — Поставьте магазин за CDN
Ваша панель cdn.com.tr — добавьте сайт и управляйте сервисами.

Зарегистрируйтесь на cdn.com.tr, нажмите «Добавить сайт» (Add Your Website) и выберите Pull CDN как источник контента — CDN забирает страницы и изображения с вашего существующего магазина (origin) и отдаёт их с edge, так что в коде магазина ничего менять не нужно.

Дальше вы выбираете, как трафик попадает на CDN. Вариантов три. «Собственный домен/поддомен» (Custom Domain/Subdomain) — обычный выбор для магазина: вы добавляете CNAME-запись для поддомена (скажем, cdn.yourstore.com) или направляете A-запись корневого домена на CDN, а ваш DNS остаётся там, где он есть сейчас. «Полный перенос DNS» (Full DNS Transfer) переносит nameservers на cdn.com.tr, чтобы весь домен управлялся и обслуживался из одного места. «Стандартная точка доступа» (Default Endpoint) сразу даёт готовый поддомен cdn.com.tr — удобно для тестов, прежде чем задействовать настоящий домен.

После подключения откройте аккаунт и задайте origin в разделе «Настройка источника контента» (Content Source Configuration): адрес вашего сервера, порты и должен ли CDN подключаться к нему только по HTTPS. Добавьте домены витрины в «Точки доставки контента» (Content Delivery Points), подтвердите владение мета-тегом или DNS TXT-записью, которые покажет панель, и включите «Использовать автоматические сертификаты Let's Encrypt» — SSL для магазина будет выпускаться и продлеваться за вас, так что замочек на странице оформления заказа никогда не пропадёт.

Шаг 2 — Правило кэширования, которое делает основную работу

CDN для интернет-магазина: практическое руководство по настройке — Шаг 2 — Правило кэширования, которое делает основную работу
Правило доставки для статики: регулярное выражение пути плюс срок кэша 30 дней.

Откройте «Правила доставки» («Кэш и безопасность») в аккаунте и добавьте правило для статических ресурсов. Правило сопоставляется по регулярному выражению пути; один шаблон покрывает сразу фото товаров, таблицы стилей, скрипты и шрифты. Задайте долгий срок кэша — 30 дней хороший вариант по умолчанию для изображений товаров, потому что на следующем шаге вы будете явно очищать изменённые файлы, а не ждать истечения кэша. Включите и браузерное кэширование, чтобы вернувшиеся покупатели держали ресурсы локально.

Две опции в этой форме важны для магазина больше, чем где-либо ещё. Первая — режим query-параметров в ключе кэша: ссылки кампаний приходят с параметрами отслеживания (utm_source, gclid, fbclid), и при стандартном полном ключе каждый вариант ссылки создаёт отдельную копию одной и той же страницы в кэше. Переключите правило на игнорирование перечисленных параметров и укажите свои параметры отслеживания — одна закэшированная копия обслужит каждый клик по рекламе. Вторая — обход по cookie: добавьте имена cookie корзины/сессии вашей платформы (для WooCommerce — woocommerce_items_in_cart и woocommerce_cart_hash), чтобы в момент, когда покупатель кладёт что-то в корзину, его страницы шли на origin и оставались персональными, пока все остальные продолжают получать быстрые кэшированные страницы.

Не пишите правило, кэширующее всё подряд. HTML-страницы магазина меняются вместе с наличием и ценами; держите их на коротком TTL или оставьте динамическими, а вес пусть несёт правило для статики — в типичном магазине изображения, CSS и JavaScript, которые оно покрывает, составляют 80–90% байтов каждой страницы.

Регулярное выражение пути для статики магазина

\.(jpg|jpeg|png|webp|gif|svg|css|js|woff2?)$

# совпадает:    /products/red-shoe-42.jpg   /assets/theme.css
# не совпадает: /  /category/shoes  /cart  /checkout

Шаг 3 — Включите оптимизацию изображений

CDN для интернет-магазина: практическое руководство по настройке — Шаг 3 — Включите оптимизацию изображений
Image optimization и compression для правила доставки.

Для большинства магазинов изображения — самое тяжёлое на странице, поэтому их оптимизация двигает результат сильнее почти всего остального. Оптимизация — это три вещи, работающие вместе: сжатие изображений, чтобы они несли меньше данных, конвертация в современные форматы вроде WebP, которые радикально меньше старых JPEG/PNG при том же качестве, и отправка изображения подходящего размера вместо огромного оригинала, уменьшаемого в браузере.

На cdn.com.tr это переключатель на уровне правила: откройте панель «Оптимизации» правила доставки, созданного на шаге 2, и включите Image Optimization и Compression. С этого момента edge сжимает фотографии товаров и отдаёт WebP браузерам, которые его принимают, автоматически — оригиналы остаются у вас, покупатели получают быструю версию под свой экран. Выгода прямая: более лёгкие страницы товаров и категорий, более быстрый Largest Contentful Paint и лучший балл Core Web Vitals, помогающий ранжированию. Подробности — в руководстве по оптимизации изображений.

Если ваш магазин работает на WooCommerce на собственном хостинге, бесплатный плагин CDNTR делает ту же работу со стороны WordPress: создаёт WebP (и AVIF, если сервер поддерживает) из фотографий товаров, отдаёт медиафайлы через CDN и — как объясняет следующий шаг — автоматически очищает кэш при изменении товара.

Шаг 4 — Пурдж при изменении цены или наличия

CDN для интернет-магазина: практическое руководство по настройке — Шаг 4 — Пурдж при изменении цены или наличия
Page Purge — очистка изменённых страниц товаров и категорий по пути.

30-дневный кэш безопасен только если вы очищаете изменённые страницы в момент их изменения. Для этого и существует пурдж, и точность важна: очищайте изменившийся товар, а не весь сайт.

В панели откройте «Очистку кэша» (Purge Management) и нажмите Page Purge. Вставьте по одному пути на строку и выберите тип совпадения: «Эти URL (точное совпадение)» очищает ровно эти пути; «Всё внутри этих папок (*)» очищает целый префикс — полезно после массового импорта цен в одну категорию; «Все варианты этих URL» очищает также мобильные/десктопные варианты и варианты с query-строкой той же страницы. Набор правил можно сохранить — например, главную, страницу кампании и категорию бестселлеров — и перезапустить одним кликом утром в день кампании. Есть и «Очистить всё», но относитесь к нему как к крайней мере: он опустошает весь кэш, и каждый покупатель после этого бьёт в ваш origin, пока кэш не наполнится снова.

Если магазин на WooCommerce, вручную пуржить вообще не нужно. Плагин CDNTR встраивается в WordPress: когда вы обновляете товар, он очищает страницу товара, страницу магазина и каждую категорию, к которой товар относится; когда вы редактируете категорию или меняете тему — очищает соответственно, а затем заново прогревает кэш, чтобы даже первый посетитель после изменения получил страницу из кэша edge.

Шаг 5 — Автоматизируйте с cdnctl (и дайте это вашему AI)

Всем перечисленным выше можно управлять и из командной строки. cdnctl — открытый CLI cdn.com.tr: вы входите с учётными данными панели, один раз выбираете аккаунт и пуржите из скриптов, cron-задач или деплой-пайплайнов. Каждая команда печатает JSON, что делает её одинаково удобной для людей, CI-систем и AI-агентов — если вы доверили ассистенту управление магазином, он может читать вывод и управлять CDN за вас. Для неинтерактивных сред задайте переменные окружения CDN_ACCESS_TOKEN и CDN_ACCOUNT вместо входа.

Паттерн, который лучше всего подходит e-commerce: пусть ваша ERP, PIM или скрипт импорта вызывает cdnctl после записи новых цен — товары меняются, и их страницы свежи на edge за секунды, без открытия панели. Доступен и полный CDN API, если вы предпочитаете интегрироваться напрямую.

Установка, вход, пурдж — весь цикл
curl -fsSL https://cdn.com.tr/downloads/cdnctl/install.sh | sh
cdnctl login --email you@yourstore.com     # пароль запрашивается, скрыт
cdnctl accounts ls                          # найдите UUID своего аккаунта
cdnctl accounts use <uuid>                  # задайте его по умолчанию

# изменилась цена одного товара:
cdnctl purge --path /product/running-shoes-42 --path /category/shoes/

# массовый импорт затронул целую категорию:
cdnctl purge --path /category/shoes/ --type prefix

# крайняя мера (опустошает весь кэш):
cdnctl purge all --yes
cdnctl purge all status

Шаг 6 — Чек-лист дня кампании

CDN для интернет-магазина: практическое руководство по настройке — Шаг 6 — Чек-лист дня кампании
Security на уровне правила: IP-правила, rate limiting и защита hotlink.

Моменты, когда магазину важнее всего оставаться быстрым, — это моменты его наибольшей нагрузки: Black Friday, скидочная кампания, запуск. Кэширование на edge меняет арифметику — тысячи покупателей, открывающих одну и ту же страницу кампании, получают кэшированные копии рядом с собой, пока origin обрабатывает только корзины и оформление заказов, — но спокойный день кампании всё равно требует подготовки.

Перед кампанией: убедитесь, что правило для статики из шага 2 покрывает изображения страницы кампании, очистите страницы кампании и категорий, чтобы кэшировались новые цены, а затем сами один раз откройте эти страницы — визит прогреет кэш edge. Не запускайте «Очистить всё» прямо перед пиком трафика; пуржите конкретные изменившиеся пути.

Для защиты откройте панель «Безопасность» ваших правил доставки и задайте лимит частоты запросов, чтобы ни один клиент не мог молотить в ваш origin. На странице «Безопасность» переключите защиту от ботов (JS Challenge) в режим «рискованные посетители» — IP-адреса датацентров, анонимные прокси и поддельные краулеры получают JavaScript-проверку, а настоящие покупатели и подтверждённые поисковики проходят без помех. Если магазин продаёт на определённые рынки, можно также ограничить доступ по ISO-кодам стран. WAF и защита от DDoS уже работают на edge перед вами; что именно они поглощают, описано в руководстве по защите на edge.

Или пропустите сборку: разместите магазин на cdn.com.tr

CDN для интернет-магазина: практическое руководство по настройке — Или пропустите сборку: разместите магазин на cdn.com.tr
Управляемые платформы и container apps на cdn.com.tr.

Всё в этом руководстве предполагало, что у магазина уже есть хостинг, а CDN стоит перед ним. Есть путь короче: разместить магазин на самом cdn.com.tr. Управляемый WordPress-хостинг идёт с готовым к WooCommerce WordPress, интеграцией CDNTR, кэшированием на edge, оптимизацией изображений и автоматическим SSL из коробки — шаги 1–4 этого руководства фактически сделаны за вас в первый же день. Если у вас собственный стек, вы можете развернуть свои контейнеры приложений за тем же edge и хранить медиа товаров в S3-совместимом объектном хранилище, доставляемом той же сетью.

В любом случае CDN, оптимизация изображений, WAF, защита от DDoS, SSL, хостинг и хранилище живут под одной панелью и одним счётом — единое место для работы магазина вместо сшивания сервисов.

Где CDN для e-commerce окупается больше всего

Каталоги, насыщенные изображениями

Мода, мебель, электроника — магазины с большими галереями выигрывают больше всех от доставки с edge и автоматической оптимизации изображений.

Кампании и флеш-распродажи

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

Продажи в разных регионах

Локальные edge быстро обслуживают турецких покупателей, а международных — из ближайших точек, так что быструю работу получает более широкая аудитория.

Автоматизированные операции

cdnctl и REST API позволяют вашим скриптам импорта, CI-задачам и AI-агентам пуржить и управлять CDN без человека в панели.

FAQ по CDN для e-commerce

Сломает ли CDN мою корзину или оформление заказа?

Нет. Правило для статики из этого руководства кэширует только статические файлы (изображения, CSS, JavaScript), а опция обхода по cookie отправляет любого покупателя с товарами в корзине прямо в ваш магазин. Цены, наличие и итоги остаются верны для каждого покупателя; кэшируются и ускоряются только тяжёлые общие ресурсы.

После обновления товара покупатели видят старую цену — почему?

Старая страница всё ещё в кэше edge. Очистите путь товара (и страницу его категории) в «Очистке кэша» в панели или через cdnctl; если магазин на WooCommerce, установите плагин CDNTR — и этот пурдж будет происходить автоматически при каждом сохранении товара.

Какое одно изменение быстрее всего ускорит магазин?

Для большинства магазинов — оптимизация изображений: сжатие фотографий товаров и отдача современных форматов вроде WebP нужного размера. Изображения обычно доминируют в весе страницы, поэтому уже одно это часто заметно улучшает загрузку и Core Web Vitals. На cdn.com.tr это один переключатель в панели «Оптимизации» вашего правила доставки.

Можно ли использовать это с WooCommerce?

Да. Вы можете поставить cdn.com.tr перед существующим магазином WooCommerce по этому руководству или разместить его на управляемой платформе WordPress cdn.com.tr, где CDN, кэширование, оптимизация изображений и SSL идут преднастроенными. Бесплатный плагин CDNTR в обоих случаях добавляет автоматический пурдж и конвертацию в WebP/AVIF.

Можно ли автоматизировать пурдж из ERP или скриптов импорта?

Да. CLI cdnctl входит с учётными данными вашей панели и очищает пути, префиксы или весь кэш из любого скрипта, с выводом в JSON и авторизацией через переменную окружения (CDN_ACCESS_TOKEN) для CI. Есть и REST API, если вы предпочитаете прямую интеграцию.

Как CDN помогает во время большой распродажи?

Во время всплеска кэширование на edge отдаёт множеству покупателей, попадающих на одни и те же страницы кампании и категорий, копии рядом с ними вместо перегрузки origin, а ваш сервер обрабатывает только по-настоящему динамические шаги корзины и оформления заказа. Добавьте лимит частоты запросов и защиту от ботов в режиме «рискованные посетители» — и магазин останется отзывчивым под толпой.