Leave blank if you selected text in visual editor

@keyframes spinner__animation{0%{animation-timing-function:cubic-bezier(.5856,.0703,.4143,.9297);transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes loading__animation{to{transform:translateX(100%)}}.wc-block-components-product-rating{display:block}.wc-block-components-product-rating span{line-height:1.618}.wc-block-components-product-rating__stars{display:inline-block;font-family:WooCommerce;font-size:1em;font-weight:400;height:1.618em;line-height:1.618;overflow:hidden;position:relative;width:5.3em}.wc-block-components-product-rating__stars.wc-block-grid__product-rating__stars{margin:0}.wc-block-components-product-rating__stars:before{color:inherit;content:"SSSSS";left:0;line-height:1.618;opacity:.5;position:absolute;right:0;top:0;white-space:nowrap}.wc-block-components-product-rating__stars span{color:inherit;left:0;overflow:hidden;padding-top:1.5em;position:absolute;right:0;top:0}.wc-block-components-product-rating__stars span:before{color:inherit;content:"SSSSS";left:0;line-height:1.618;position:absolute;right:0;top:0;white-space:nowrap}.wc-block-all-products .wc-block-components-product-rating{margin-bottom:12px;margin-top:0}.wc-block-components-product-rating__container>*{vertical-align:middle}.wc-block-components-product-rating__stars+.wc-block-components-product-rating__reviews_count{margin-left:8px}.wc-block-components-product-rating__norating-container{align-items:center;display:inline-flex;flex-direction:row;gap:8px}.wc-block-components-product-rating__norating{display:inline-block;font-family:WooCommerce;font-size:1em;font-weight:400;height:1.618em;line-height:1.618;overflow:hidden;position:relative;width:1.5em}.wc-block-components-product-rating__norating:before{-webkit-text-stroke-color:inherit;-webkit-text-stroke-width:2px;-webkit-text-fill-color:transparent;content:"S";left:0;position:absolute;right:0;text-align:center;top:0;white-space:nowrap}.wc-block-all-products .is-loading .wc-block-components-product-rating,.wp-block-query .is-loading .wc-block-components-product-rating{background-color:currentColor!important;border:0!important;border-radius:.25rem;box-shadow:none;color:currentColor!important;display:block;line-height:1;max-width:100%!important;opacity:.15;outline:0!important;overflow:hidden!important;pointer-events:none;position:relative!important;width:100%;width:7em;z-index:1}.wc-block-all-products .is-loading .wc-block-components-product-rating>*,.wp-block-query .is-loading .wc-block-components-product-rating>*{visibility:hidden}.wc-block-all-products .is-loading .wc-block-components-product-rating:after,.wp-block-query .is-loading .wc-block-components-product-rating:after{animation:loading__animation 1.5s ease-in-out infinite;background-image:linear-gradient(90deg,currentColor,hsla(0,0%,96%,.302),currentColor);background-repeat:no-repeat;content:" ";display:block;height:100%;left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}@media screen and (prefers-reduced-motion:reduce){.wc-block-all-products .is-loading .wc-block-components-product-rating,.wp-block-query .is-loading .wc-block-components-product-rating{animation:none}}.wc-block-all-products .wc-block-components-product-rating__container,.wp-block-query .wc-block-components-product-rating__container{display:block}.wc-block-all-products .wc-block-components-product-rating__stars.wc-block-grid__product-rating__stars,.wp-block-query .wc-block-components-product-rating__stars.wc-block-grid__product-rating__stars{margin:inherit} @keyframes spinner__animation{0%{animation-timing-function:cubic-bezier(.5856,.0703,.4143,.9297);transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes loading__animation{to{transform:translateX(100%)}}.wc-block-rating-filter.is-loading{background-color:currentColor!important;border:0!important;border-radius:.25rem;border-radius:0;box-shadow:none;color:currentColor!important;display:block;line-height:1;margin-top:16px;max-width:100%!important;opacity:.15;outline:0!important;overflow:hidden!important;pointer-events:none;position:relative!important;width:100%;z-index:1}.wc-block-rating-filter.is-loading>*{visibility:hidden}.wc-block-rating-filter.is-loading:after{animation:loading__animation 1.5s ease-in-out infinite;background-image:linear-gradient(90deg,currentColor,hsla(0,0%,96%,.302),currentColor);background-repeat:no-repeat;content:" ";display:block;height:100%;left:0;position:absolute;right:0;top:0;transform:translateX(-100%)}@media screen and (prefers-reduced-motion:reduce){.wc-block-rating-filter.is-loading{animation:none}}.wc-block-rating-filter.style-dropdown{align-items:flex-start;display:flex;gap:16px;position:relative}.wc-block-rating-filter.style-dropdown .single-selection .components-form-token-field__token+input[type=text].components-form-token-field__input{opacity:0}.wc-block-rating-filter.style-dropdown .single-selection .components-form-token-field__input-container.is-active .components-form-token-field__token+input[type=text].components-form-token-field__input{opacity:1}.wc-block-rating-filter.style-dropdown .wc-block-components-filter-submit-button{height:36px;line-height:1}.wc-block-rating-filter.style-dropdown>svg{pointer-events:none;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.wc-block-rating-filter .wc-block-components-product-rating__stars{display:inline-block}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper{flex-grow:1;height:-moz-max-content;height:max-content;max-width:unset;width:0}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper:not(.is-loading){border:1px solid #757575!important;border-radius:4px}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper.is-loading{border-radius:.25em}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field{border-radius:inherit}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container{border:0;border-radius:inherit;color:inherit;font-family:inherit;font-size:inherit;font-style:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;padding:8px;text-decoration:inherit;text-transform:inherit}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__input{font-size:.875em}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__input::-moz-placeholder{color:#000}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__input:-ms-input-placeholder{color:#000}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__input::placeholder{color:#000}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__suggestions-list{border:1px solid #757575;border-radius:4px;margin-top:8px;max-height:21em}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__suggestions-list .components-form-token-field__suggestion{border:1px solid #ccc;border-radius:4px;color:#000;margin:12px;padding:12px}.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__suggestion,.wc-block-rating-filter .wc-blocks-components-form-token-field-wrapper .components-form-token-field__input-container .components-form-token-field__token{font-size:.875em}.wc-block-rating-filter .wc-block-components-product-rating{display:flex;margin-bottom:0}.wc-block-rating-filter .wc-block-components-product-rating .wc-block-components-product-rating-count{margin-left:4px}.wc-blocks-components-form-token-field-wrapper:not(.single-selection) .components-form-token-field__input-container{padding:4px 30px 4px 8px}.wc-blocks-components-form-token-field-wrapper:not(.single-selection) .components-form-token-field__input-container .components-form-token-field__token-text{background-color:#fff;border:1px solid;border-radius:25px 0 0 25px;border-right:0;line-height:22px;padding:.25em .5em .25em .75em}.wc-blocks-components-form-token-field-wrapper:not(.single-selection) .components-form-token-field__input-container>.components-form-token-field__input{margin:.25em 0}.wc-blocks-components-form-token-field-wrapper:not(.single-selection) .components-form-token-field__input-container .components-button.components-form-token-field__remove-token{background-color:#fff;border:1px solid;border-left:0;border-radius:0 25px 25px 0;padding:1px .25em 0 0}.wc-blocks-components-form-token-field-wrapper:not(.single-selection) .components-form-token-field__input-container .components-button.components-form-token-field__remove-token.has-icon svg{background-color:#e0e0e0;border-radius:25px}.wp-block-woocommerce-rating-filter{margin-bottom:24px}.wp-block-woocommerce-rating-filter .wc-block-rating-filter .wc-block-rating-filter-list li input,.wp-block-woocommerce-rating-filter .wc-block-rating-filter .wc-block-rating-filter-list li label{cursor:pointer}.wc-block-rating-filter__actions{align-items:center;display:flex;gap:16px;justify-content:flex-end;margin-top:16px}.wc-block-rating-filter__actions .wc-block-components-filter-submit-button{margin-left:0}.wc-block-rating-filter__actions .wc-block-components-filter-submit-button:disabled{cursor:auto;opacity:.6}.wc-block-rating-filter__actions button[type=submit]:not(.wp-block-search__button).wc-block-components-filter-submit-button{font-size:.875em;margin-left:0;margin-top:0}.editor-styles-wrapper .wc-block-rating-filter .wc-block-rating-filter__button,.wc-block-rating-filter__actions .wc-block-rating-filter__button{font-size:.875em;margin-top:.5em;padding:.5em 1em} timely.define(["jquery_timely"],function(e){return{localize:function(){e.fn.datepicker.dates["rs-latin"]={days:["Nedelja","Ponedeljak","Utorak","Sreda","Četvrtak","Petak","Subota","Nedelja"],daysShort:["Ned","Pon","Uto","Sre","Čet","Pet","Sub","Ned"],daysMin:["N","Po","U","Sr","Č","Pe","Su","N"],months:["Januar","Februar","Mart","April","Maj","Jun","Jul","Avgust","Septembar","Oktobar","Novembar","Decembar"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Avg","Sep","Okt","Nov","Dec"],today:"Danas"}}}});/*! elementor - v3.29.0 - 28-05-2025 */ "use strict";(self.webpackChunkelementorFrontend=self.webpackChunkelementorFrontend||[]).push([[177],{4315:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class ImageCarousel extends elementorModules.frontend.handlers.CarouselBase{getDefaultSettings(){const e=super.getDefaultSettings();return e.selectors.carousel=".elementor-image-carousel-wrapper",e}}t.default=ImageCarousel}}]); CDN без поддержки динамики не ускорит интернет-магазин - Sous Vide

CDN без поддержки динамики не ускорит интернет-магазин

This site contains affiliate links to products. We may receive a commission for purchases made through these links.

Интернет-магазин на 1С-Битрикс или WooCommerce отдаёт браузеру сотни объектов: картинки каталога, CSS темы, JS-скрипты фильтров, шрифты. Статики здесь легко набирается 70-80% от общего веса страницы, и именно её принято разгружать через CDN. Проблема в том, что метрика, которую владелец магазина видит в отчётах, называется не “скорость отдачи картинок”, а конверсия. А конверсию делают корзина, оформление заказа, личный кабинет и подбор товара по фильтрам – то есть динамика, которую обычный CDN не кэширует и, как правило, не ускоряет. Тезис простой: CDN без поддержки динамического контента оптимизирует то, что и так не было узким местом, и оставляет нетронутым самый дорогой участок воронки.

Почему кэширование статики не двигает конверсию интернет-магазина

Разберём путь покупателя. Человек пришёл из Telegram или Дзена на карточку товара, посмотрел фото, полистал описание, нажал “В корзину”, перешёл к оформлению, ввёл адрес, выбрал доставку, оплатил. Статические ресурсы участвуют только на первых шагах. Как только пользователь авторизовался или положил товар в корзину, каждый следующий запрос уходит на бэкенд: пересчёт стоимости с учётом скидок и промокодов, проверка остатков на складе, расчёт вариантов доставки, генерация страницы оформления с персональными данными. Это уже не картинка, которую можно положить на edge-сервер и отдавать из кэша. Это запрос к базе, к 1С, к платёжному шлюзу.

Классический CDN строит свою модель вокруг HTTP-кэша. Он смотрит на заголовки Cache-Control, на расширение файла, на путь запроса и решает: отдать из кэша или пропустить к origin. Для статики решение очевидное, для страницы /basket/ или /personal/order/make/ – тоже очевидное, но в обратную сторону: не кэшировать. В результате весь трафик по критичному пути проходит через CDN транзитом, добавляя лишний хоп и задержку TLS-хендшейка, но не получая никакого ускорения. Хуже того, некоторые конфигурации по умолчанию кэшируют ответы для неавторизованных и отдают их авторизованным, и тогда покупатель видит чужую корзину или устаревший остаток. Это не гипотетический риск, это типовая причина инцидентов при миграции на “просто CDN”.

Отсюда вывод, который плохо продаётся в маркетинговых материалах: прирост конверсии от CDN начинается не там, где вы отдали картинки быстрее, а там, где вы сократили время ответа динамических страниц. Пока корзина собирается 1,8 секунды, а оформление заказа – 3 секунды, экономия 200 миллисекунд на загрузке логотипа ничего не меняет. Замеряется это просто: включите синтетический мониторинг на URL корзины и оформления, а не только на главную, и сравните TTFB до и после подключения CDN. Если по динамике разницы нет, вы купили разгрузку канала, а не ускорение магазина.

Что именно нужно кэшировать, а что обходить

Грамотная схема выглядит так. Каталог, категории, карточки товаров для анонимных посетителей – кэшируются на edge с коротким TTL и инвалидацией по изменению товара. Статика, шрифты, JS, CSS – кэшируются надолго, с версионированием через хэш в имени файла. Запросы авторизованных пользователей, любые URL с сессионной кукой, корзина, оформление заказа, личный кабинет, AJAX-запросы фильтров и подбора – не кэшируются, но проходят через edge с оптимизацией маршрута до origin, keep-alive до бэкенда и сжатием ответа. Это и есть динамический обход кэша: правило, которое явно исключает динамику из кэширования, но не исключает её из ускоренной доставки.

Для российского интернет-магазина добавляется второй слой сложности. Если магазин обслуживает покупателей в РФ, а инфраструктура привязана к зарубежному CDN, вы получаете не только задержки, но и риск, что доступ к сайту ограничат на уровне провайдера. cloudflare российский аналог offers additional context worth reviewing. Cloudflare ограничивает доступ к сайтам из России, а российские интернет-провайдеры в свою очередь ограничивают доступ к сайтам на Cloudflare – и магазин, у которого весь фронт висит на таком CDN, рискует потерять трафик целиком, вместе с уже оплаченной рекламой. Зависимость от зарубежной инфраструктуры создаёт риски для российского бизнеса не в теории, а в виде конкретного сценария: рекламный бюджет израсходован, покупатель не открыл страницу.

Как выбрать CDN с поддержкой динамики под задачи магазина

Смотрите не на количество точек присутствия, а на то, умеет ли платформа разделять статику и динамику на уровне правил, а не на уровне ручных исключений. Хороший признак: в интерфейсе есть отдельные настройки для авторизованных пользователей, для запросов с определёнными куками, для методов POST, для AJAX. Плохой признак: единственный тумблер “кэшировать всё” и совет от поддержки “пропишите исключения в .htaccess”.

Второй критерий – что происходит с динамическим запросом после того, как он прошёл мимо кэша. Если платформа просто проксирует его на origin, выигрыш будет нулевым. Если она держит постоянные соединения с бэкендом, маршрутизирует запрос по ближайшему узлу, сжимает ответ и снимает часть нагрузки на TLS, TTFB динамики падает на десятки процентов. Для магазина на Bitrix это разница между “каталог открывается” и “каталог открывается, пока сервер не ушёл в swap”.

Третий критерий – тарификация. Модель “платите за каждый запрос” наказывает именно динамический магазин: корзина, фильтры и AJAX генерируют в разы больше запросов, чем статика, и счёт растёт вместе с вашим трафиком. Ищите провайдера, который не тарифицирует ботов, атаки и WAF-блокировки – иначе защита от L7 DDoS превращается в статью расходов, которая увеличивается ровно в тот момент, когда вас атакуют. TrafficVeil не тарифицирует ботов, атаки и WAF-блокировки, и это принципиально для магазина, у которого пиковый трафик приходится на распродажи.

Четвёртый критерий – комплектность. Отдельно CDN, отдельно DNS-сервис, отдельно SSL-сертификат, отдельно WAF, отдельно защита от ботов – это пять панелей, пять биллингов и пять мест, где что-то может отвалиться. TrafficVeil объединяет DNS, SSL, reverse proxy, WAF, защиту от ботов, L7 DDoS, GeoIP-фильтрацию и аналитику в одной веб-платформе, и для магазина это означает, что правило обхода кэша для корзины и правило GeoIP-фильтрации для нежелательного трафика настраиваются в одном месте. TrafficVeil является российским аналогом Cloudflare и обеспечивает работу сайтов на территории РФ и по всему миру, что закрывает главный риск – потерю доступа из-за зарубежной инфраструктуры. Подходит для сайтов, интернет-магазинов, WordPress и Bitrix, включая сценарии, где магазин работает на двух платформах одновременно. Если вы ищете, чем заменить Cloudflare, и при этом не хотите потерять динамику, имеет смысл смотреть на альтернативу Cloudflare, которая умеет обходить кэш для авторизованных, а не только раздавать картинки. TrafficVeil предлагает переход с Cloudflare с сохранением текущей логики кэширования статики и добавлением обхода кэша для динамических страниц.

Практический порядок действий для магазина: соберите список URL, которые формируют воронку – каталог, карточка, корзина, оформление, оплата, личный кабинет. Замерьте TTFB по каждому до подключения. Настройте кэширование для анонимного каталога и статики, обход кэша для всего, что содержит сессию или куку авторизации. После подключения замерьте TTFB повторно и сравните не средние по сайту, а отдельно по корзине и оформлению. Если динамика не ускорилась, меняйте не тариф, а конфигурацию: правило обхода кэша должно ускорять запрос, а не просто пропускать его. И держите SSL-сертификат, DNS и защиту на той же платформе, что и CDN, чтобы при следующем изменении регуляторных требований или маршрутизации вам не пришлось переключать три сервиса вручную.

Special offer for our visitors

Get your Free Guide to Vacuum-Sealed Cooking

We will never send you spam. By signing up for this you agree with our privacy policy and to receive regular updates via email in regards to industry news and promotions