Обычная клоака живёт на хостинге: PHP-лоадер рядом с лендингом, плагин в WordPress, модуль в трекере. У такого подхода есть слабое место: файлы фильтра лежат на сервере, их видно в исходниках, а любая ошибка хостинга отключает защиту. Cloudflare Worker переносит решение на границу сети. Запрос посетителя сначала попадает на серверы Cloudflare, там выполняется небольшой скрипт, он получает решение от KLO и отдаёт white или offer. До хостинга запрос доходит уже с готовым решением или не доходит вовсе.
Как работает Worker перед сайтом
По документации Cloudflare, маршруты Workers добавляют функциональность к уже проксируемым через Cloudflare доменам, перед вашим сервером приложений. Worker выступает как прокси и может выполнить любую работу до обращения к серверу за Cloudflare, а вызов fetch() внутри Worker отправляет подзапрос на сервер, указанный в DNS вашей зоны. Для маршрута нужны активная зона Cloudflare, сам Worker и DNS-запись домена, проксируемая через Cloudflare, то есть с включённым оранжевым облаком.
Для клоаки это означает следующую цепочку.
- Посетитель открывает адрес из объявления. DNS ведёт на Cloudflare.
- Worker на маршруте
ваш-домен/*получает запрос вместе с IP посетителя, заголовками и параметрами. - Worker запрашивает решение у KLO. Среднее время решения меньше 50 миллисекунд.
- По ответу Worker отдаёт white или offer: забирает нужную страницу с хостинга или с другого адреса и возвращает её посетителю под тем же URL.
На хостинге при этом нет PHP-файлов, модулей и кода клоаки. Именно так интеграция описана у KLO: «Посетитель → Cloudflare Worker → White / Offer», хостинг клиента без файлов КЛО. Она не зависит от CMS и технологии сайта: сзади может быть WordPress, статический лендинг, приложение на Node.js или трекер.
Лимиты Workers, которые важны для трафика
Cloudflare публикует лимиты планов. На бесплатном плане Workers Free это 100 000 запросов в день и 10 миллисекунд процессорного времени на запрос, на платном Workers Paid лимита на количество запросов нет, процессорное время до 5 минут. Память 128 МБ в обоих случаях, подзапросов 50 на запрос у Free и 10 000 у Paid.

Что из этого следует. Для тестов и небольших кампаний бесплатного плана хватает: 100 000 запросов в день это не только клики по рекламе, но и все запросы к домену, включая картинки и скрипты, если они проходят через маршрут Worker. Для серьёзных объёмов нужен платный план Workers, он стоит отдельно от подписки на фильтр. Ограничение на процессорное время не мешает: запрос решения у KLO это сетевое ожидание, а не вычисления, и в 10 миллисекунд CPU он укладывается.
Что настроить в Cloudflare
- Проксирование. DNS-запись домена связки должна быть проксируемой, с оранжевым облаком. Иначе маршрут Worker не сработает.
- Кэш HTML. Правила кэширования не должны кэшировать HTML входных адресов. Иначе первое решение для первого посетителя запомнится на границе и будет отдано всем. Статику, картинки и скрипты кэшировать можно.
- Реальный IP. Worker видит IP посетителя в заголовке
CF-Connecting-IP, и KLO получает именно его. На хостинг при этом приходит IP Cloudflare, поэтому логика на сервере не должна принимать решений по IP: решение уже принято в Worker. - Bot Fight Mode и челленджи. Если включены, Cloudflare может показать проверку части реальных посетителей и части роботов. Роботы проверки рекламы, которым вы хотите отдать white, должны доходить до Worker, а не упираться в капчу Cloudflare с непредсказуемым результатом.
Подключение в KLO
Интеграция через Cloudflare Worker входит в тариф DOMINATION. В кабинете KLO выбирается тип подключения Cloudflare Worker, кабинет показывает готовый код и параметры, установка автоматическая. Дальше правила кампании те же, что и при любом другом подключении: источник, страны, устройства, требование метки клика, адреса white и offer, прогрев. Правила по источникам мы разобрали отдельно: Facebook, Google Ads, TikTok, Яндекс Директ, VK Реклама.

Когда Worker лучше PHP-лоадера, а когда нет
| Ситуация | Что выбрать |
|---|---|
| Хостинг без PHP, статический сайт, приложение на Node.js или конструктор | Worker: не зависит от технологии сайта |
| Нужно, чтобы на сервере не было следов фильтра | Worker |
| Много доменов на одном аккаунте Cloudflare | Worker: один код, маршруты на каждый домен |
| Домен нельзя проксировать через Cloudflare, например из-за требований гео к IP | PHP-лоадер или плагин |
| Трекер Keitaro уже ведёт трафик | Модуль Keitaro, а Worker как дополнительный слой на домене white |
| Большие объёмы и нежелание платить за Workers Paid | PHP-лоадер на своём сервере |
Частые вопросы
Что такое клоака на Cloudflare Worker
Фильтр, который выполняется на серверах Cloudflare до вашего хостинга. Worker на маршруте домена получает запрос, запрашивает решение у KLO и отдаёт white или offer под тем же адресом. На хостинге файлов клоаки нет.
Нужен ли платный план Cloudflare
Для Worker нужна зона Cloudflare с проксируемым доменом; сама зона может быть бесплатной. Workers Free даёт 100 000 запросов в день, для больших объёмов нужен Workers Paid без лимита запросов.
Видит ли Worker реальный IP посетителя
Да, в заголовке CF-Connecting-IP, и именно он передаётся в KLO для решения.
Что будет с кэшем Cloudflare
HTML входных адресов кэшировать нельзя, иначе решение фильтра запомнится на границе и будет отдано всем. Статику кэшировать можно.
В каком тарифе KLO есть Cloudflare Worker
В DOMINATION. В START и PROFIT доступны PHP-лоадер, SDK, JS-фильтр, Keitaro и WordPress.
Проверьте связку на своём трафике
KLO отсеивает ботов, модераторов и фрод до показа оффера. Пробный период 3 дня с полным функционалом тарифа START, карта не нужна.
Начать бесплатно