---
title: "Свои домены в SaaS через Cloudflare: настройка, цена, лимиты — Dardo"
description: "Как дать клиентам свой домен в вашем SaaS с Cloudflare for SaaS: схема DNS, проверка сертификатов, цены, ограничения apex-доменов и альтернативы."
url: "https://dardo.studio/ru/blog/custom-domains-for-saas/"
language: "ru"
translations: {"en":"https://dardo.studio/en/blog/custom-domains-for-saas/","es":"https://dardo.studio/es/blog/dominios-personalizados-para-saas/","fr":"https://dardo.studio/fr/blog/domaines-personnalises-saas/","de":"https://dardo.studio/de/blog/custom-domains-saas/","it":"https://dardo.studio/it/blog/domini-personalizzati-saas/","pt":"https://dardo.studio/pt/blog/dominios-personalizados-para-saas/","nl":"https://dardo.studio/nl/blog/eigen-domeinen-voor-saas/","sv":"https://dardo.studio/sv/blogg/egna-domaner-saas-cloudflare/","pl":"https://dardo.studio/pl/blog/wlasne-domeny-klientow-saas/","uk":"https://dardo.studio/uk/blog/custom-domains-for-saas/","ar":"https://dardo.studio/ar/blog/custom-domains-for-saas/","hi":"https://dardo.studio/hi/blog/custom-domains-for-saas/","th":"https://dardo.studio/th/blog/custom-domains-for-saas/","ja":"https://dardo.studio/ja/blog/custom-domains-for-saas/","ko":"https://dardo.studio/ko/blog/custom-domains-for-saas/","zh-Hans":"https://dardo.studio/zh-Hans/blog/custom-domains-for-saas/","zh-Hant":"https://dardo.studio/zh-Hant/blog/custom-domains-for-saas/"}
updated: "2026-10-10T08:03:02.355Z"
---

[Блог](https://dardo.studio/ru/blog/)

# Кастомные домены для SaaS: как дать клиентам использовать собственный домен с Cloudflare for SaaS

Как позволить клиентам подключать свой домен к вашему SaaS через Cloudflare for SaaS: как работает проверка, сколько это стоит на октябрь 2026 года и где возникают проблемы.

Автор: [Nicolás Cerón](https://dardo.studio/ru/studio/) ·10 октября 2026 г.

![Ряд непохожих друг на друга витрин на ночной улице; под тротуаром в разрезе видны малиновые кабели, которые соединяют каждый магазин с единым общим машинным залом.](https://dardo.studio/_astro/01M4GYDRFXRY8D1WBNX295F126_2nc9Aq.webp)

## Коротко

Чтобы клиент мог открывать ваше приложение на своём домене, например `portal.customer.com`, нужно зарегистрировать этот домен как кастомный хостнейм в вашей зоне Cloudflare. Клиент добавляет одну CNAME-запись, указывающую на вас, Cloudflare проверяет, что хостнейм принадлежит ему, центр сертификации выпускает сертификаты, и запросы начинают поступать в ваше приложение.

На октябрь 2026 года на [странице тарифов Cloudflare for SaaS](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/plans/) указано, что тарифы Free, Pro и Business включают 100 кастомных хостнеймов, каждый дополнительный стоит $0.10, а максимум для этих тарифов — 50 000 хостнеймов.

Два ограничения определяют любую архитектуру. Без платного дополнения Enterprise клиенты не смогут направить на вас «голый» корневой домен (`customer.com`). А хостнеймы с подстановочным знаком (wildcard), собственные сертификаты и выбор центра сертификации доступны только на Enterprise. Настройка Cloudflare занимает несколько шагов. Продуктовая работа вокруг неё занимает больше времени, и в основном об этом это руководство.

## Что такое кастомный хостнейм

Кастомный хостнейм — это домен, которым владеет ваш клиент и который Cloudflare направляет в вашу зону. В [руководстве по настройке](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/getting-started/) четыре составляющие:

- **SaaS-зона.** Ваш собственный домен в Cloudflare с включённым Cloudflare for SaaS. Для старта достаточно зоны на тарифе Free.
- **Резервный origin.** Проксируемая DNS-запись, например `proxy-fallback.yourapp.com`, куда идёт трафик кастомных хостнеймов.
- **CNAME-цель.** Необязательное более удобное имя, на которое клиенты направляют домен, например `customers.yourapp.com`.
- **Кастомный хостнейм.** Домен клиента, созданный через API или панель, со своим статусом проверки. Для каждого Cloudflare выпускает два сертификата: основной ECDSA P-256 и резервный RSA 2048 бит для старых клиентов.

Если ваше приложение работает на Cloudflare Workers, платформе, на которой строит Dardo, [Worker может служить резервным origin](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/advanced-settings/worker-as-origin/). Маршрут `*/*` перехватывает запросы для всех кастомных хостнеймов, а ваш код читает заголовок `Host`, чтобы определить тенанта. Cloudflare также предлагает пользовательские метаданные для каждого хостнейма, но это платное дополнение Enterprise, поэтому на других тарифах такой поиск выполняется в вашей собственной базе данных, например в D1.

## Как это работает

1. **Клиент вводит домен** в настройках вашего приложения. Бэкенд нормализует его и вызывает эндпоинт [Create Custom Hostname](https://developers.cloudflare.com/api/resources/custom%5Fhostnames/methods/create/), указав метод проверки сертификата.
2. **Клиент добавляет DNS-запись**, которую вы ему показываете, например `portal.customer.com CNAME customers.yourapp.com`.
3. **Cloudflare проверяет владение хостнеймом.** [Проверка в реальном времени](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/domain-support/hostname-validation/realtime-validation/) запускается, когда появляется CNAME, и это может привести к кратковременному простою. [Предварительная проверка](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/domain-support/hostname-validation/pre-validation/) использует TXT-запись или HTTP-токен до смены DNS, для уже работающих доменов. Предварительная проверка не поддерживается, если зона самого клиента тоже находится в Cloudflare (схема «Orange-to-Orange»).
4. **Центр сертификации проверяет контроль над доменом** и выпускает сертификаты.
5. **Хостнейм готов**, когда `status` и `ssl.status` имеют значение `active`, а DNS указывает на вашу цель. Cloudflare предупреждает, что TLS-рукопожатие может пройти до того, как `ssl.status` станет active, поэтому источником истины считайте эндпоинт с данными о кастомном хостнейме.

### Методы проверки сертификата

[Руководство по проверке](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/security/certificate-management/issue-and-validate/validate-certificates/) Cloudflare предлагает такие варианты:

| Метод                | Что делает клиент                                                                           | Работает до переключения DNS | Примечания                                                                                                      |
| -------------------- | ------------------------------------------------------------------------------------------- | ---------------------------- | --------------------------------------------------------------------------------------------------------------- |
| HTTP, автоматический | Только добавляет CNAME                                                                      | Нет                          | Самый простой. Cloudflare советует его, когда клиенты «могут пережить несколько минут простоя».                 |
| HTTP, ручной         | Ничего, если домен уже указывает на вас; иначе размещает ваш токен на своём текущем сервере | Да                           | Полезен, когда домен уже работает у другого провайдера.                                                         |
| TXT                  | Добавляет TXT-запись, которую вы ему даёте                                                  | Да                           | Обязателен для хостнеймов с подстановочным знаком.                                                              |
| Delegated DCV        | Один раз добавляет CNAME \_acme-challenge                                                   | Да                           | Позволяет Cloudflare продлевать все будущие сертификаты. Существующая TXT-запись \_acme-challenge этому мешает. |

Проверка не длится бесконечно. Cloudflare повторяет проверку хостнейма 75 раз в течение семи дней, и согласно [графику повторных попыток](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/domain-support/hostname-validation/backoff-schedule/), «если проверка не пройдена, кастомный хостнейм будет удалён». Токены сертификатов тоже истекают: через 7 дней в Let's Encrypt и через 14 дней в Google Trust Services или SSL.com.

## Сколько это стоит на октябрь 2026 года

|                                                     | Free   | Pro    | Business | Enterprise                                                |
| --------------------------------------------------- | ------ | ------ | -------- | --------------------------------------------------------- |
| Включено хостнеймов                                 | 100    | 100    | 100      | По договорённости                                         |
| Цена за дополнительный хостнейм                     | $0.10  | $0.10  | $0.10    | По договорённости                                         |
| Максимум хостнеймов                                 | 50,000 | 50,000 | 50,000   | Без ограничений (свыше 50 000 обращайтесь в отдел продаж) |
| Кастомные хостнеймы с подстановочным знаком         | Нет    | Нет    | Нет      | Да                                                        |
| Собственные сертификаты и выбор центра сертификации | Нет    | Нет    | Нет      | Да                                                        |
| Проксирование корневого домена / BYOIP              | Нет    | Нет    | Нет      | Платное дополнение                                        |
| Пользовательские метаданные                         | Нет    | Нет    | Нет      | Платное дополнение                                        |

На странице тарифов $0.10 указано без периода. В [анонсе 2022 года](https://blog.cloudflare.com/waf-for-saas/) Cloudflare описывала это как снижение цены «с $2 до $0.10 в месяц». При такой месячной ставке 1 000 клиентских доменов означают 900 сверх включённых 100, то есть $90 в месяц.

Два правила биллинга важны для проектирования продукта. Согласно [странице о квотах и биллинге](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/quotas-and-billing/) Cloudflare, каждый хостнейм учитывается в потреблении, пока вы его не удалите, включая «хостнеймы, ожидающие проверки или активации». А на тарифах без Enterprise действует порог, применяемый через API, после которого новые хостнеймы отклоняются.

## Где это ломается

### Корневые домены

В руководстве по настройке Cloudflare сказано прямо: «По умолчанию использование A-записи для указания на целевой хост не поддерживается». Большинство DNS-провайдеров не разрешают CNAME в корне домена, поэтому клиентам нужен поддомен, например `www.customer.com` или `app.customer.com`. [Apex proxying](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/start/advanced-settings/apex-proxying/) закрепляет за вашим аккаунтом статические IP-префиксы, и клиенты могут использовать A-запись, но это платное дополнение для тарифа Enterprise. Без него просите клиентов использовать поддомен и объясните, как у своего DNS-провайдера настроить перенаправление с домена без поддомена на него.

### Центры сертификации и записи CAA

В [справочнике по центрам сертификации](https://developers.cloudflare.com/ssl/reference/certificate-authorities/) Cloudflare для пользовательских хостнеймов указаны Let's Encrypt (сертификаты на 90 дней), Google Trust Services и SSL.com (14, 30 или 90 дней). Выбирать центр сертификации можно только на тарифе Enterprise; в остальных случаях Cloudflare использует свой центр по умолчанию и сначала проверяет записи CAA. Если CAA-записи клиента не разрешают этот центр, выпуск завершается ошибкой «CAA records block issuance», и исправить это может только клиент. Проверка CAA проходит по цепочкам CNAME, поэтому учитываются и CAA-записи вашего собственного целевого домена. Остальные ошибки на стороне клиента перечислены в [руководстве по устранению неполадок](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/security/certificate-management/issue-and-validate/validate-certificates/troubleshooting/): неисправный DNSSEC и DNS-серверы, отвечающие SERVFAIL.

### Продление

Сертификаты пользовательских хостнеймов действуют 90 дней и могут [продлеваться](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/security/certificate-management/issue-and-validate/renew-certificates/) за 30 дней до истечения срока. Активные хостнеймы без подстановочных символов продлеваются автоматически по HTTP. Если хостнейм больше не активен, например потому что клиент изменил свои DNS, клиенту нужно разместить новый токен, а отправить его ему должны вы. Wildcard-сертификаты можно продлить только через TXT, и именно это автоматизирует Delegated DCV.

### Клиенты на другом CDN или на Cloudflare

Cloudflare сообщает, что [пользовательские хостнеймы, использующие другой CDN, несовместимы](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/domain-support/hostname-validation/), если этот CDN скрывает DNS-записи. Клиенты, чьи домены находятся на Cloudflare, создают обратную проблему: если они уходят, а вы не [удалили их хостнейм](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/domain-support/remove-custom-hostnames/), он может продолжать направлять трафик на ваш сервис даже после смены DNS.

### Workers перед путями валидации

Если резервным origin служит Worker, он должен пропускать `/.well-known/pki-validation/*` и `/.well-known/acme-challenge/*` без изменений. Универсальный маршрут, отвечающий страницей 404 вашего приложения, ломает HTTP-валидацию.

## Продуктовая работа вокруг этого

- **Контроль тарифов.** Решите, в какие ваши тарифы входят пользовательские домены и в каком количестве, и проверяйте это до обращения к Cloudflare. Его квота и порог — это верхние пределы, а не ваша ценовая политика.
- **Экран подключения.** Одно поле ввода. Приводите значение к нижнему регистру, убирайте протокол и путь, отклоняйте домены без поддомена, если вы не приобрели apex proxying, и отклоняйте имя вашей собственной зоны: Cloudflare предупреждает, что её нельзя создавать как пользовательский хостнейм. Затем покажите точную запись, которую нужно добавить, с кнопкой копирования.
- **Два статуса простым языком.** Хостнейм и сертификат проверяются отдельно, поэтому показывайте оба. Переводите `ssl.validation_errors` в инструкции: «CAA-записи вашего домена не разрешают наш центр сертификации; добавьте эту запись» лучше, чем «pending\_validation». Ответ на создание может ещё не содержать записей для валидации, поэтому запросите хостнейм повторно через небольшую паузу. [Вебхук-уведомления](https://developers.cloudflare.com/cloudflare-for-platforms/cloudflare-for-saas/security/certificate-management/webhook-definitions/) Cloudflare сообщают о событиях валидации и выпуска, а это лучше, чем опрос.
- **Мониторинг продления.** Ежедневная задача, которая отмечает хостнеймы с неактивным сертификатом или с DNS, больше не указывающими на вас, чтобы ваша команда узнала об этом раньше клиента.
- **Очистка.** Удаляйте хостнеймы, которые так и не прошли валидацию, и хостнеймы ушедших клиентов. Оба вида тарифицируются до удаления.
- **Изоляция тенантов.** Определяйте тенанта только по активным хостнеймам в вашей базе данных. Если тенантам также выдаются поддомены вашего домена, в [документации Vercel по доменам](https://vercel.com/docs/platforms/multi-tenant-platforms/configuring-domains) отмечено, что cookie, установленный одним тенантом для родительского домена, доходит до остальных, поэтому держите панель управления и вход на отдельном домене.
- **Руководство для поддержки.** Короткая страница для вашей команды, сопоставляющая каждую ошибку с тем, кто её исправляет: отсутствующий CNAME, CAA, DNSSEC и SERVFAIL — на стороне клиента; токены, лимиты центра сертификации и маршруты Worker — на вашей.

Именно такой работой Dardo занимается в [разработке веб-приложений](https://dardo.studio/ru/services/web-app-development/), а white-label [клиентские порталы](https://dardo.studio/ru/services/client-portal-development/) — то, где пользовательские домены просят чаще всего.

## Альтернативы: Vercel и Netlify

Если ваше приложение уже работает на другой платформе, оба хостинга поддерживают клиентские домены со своими задокументированными ограничениями по состоянию на октябрь 2026 года.

|                      | Cloudflare for SaaS                                                   | Vercel                                                                                                                          | Netlify                                                                                                                                                    |
| -------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Лимиты доменов       | 100 включено, до 50 000 на Free, Pro и Business                       | [50 на проект](https://vercel.com/docs/limits) на Hobby; «Unlimited» на Pro и Enterprise с мягкими лимитами 100 000 и 1 000 000 | «Мы рекомендуем назначать не более [50 псевдонимов доменов](https://docs.netlify.com/manage/domains/configure-domains/add-a-domain-alias/) на один сайт»   |
| Домены без поддомена | Дополнение для Enterprise                                             | [A-запись](https://vercel.com/kb/guide/a-record-and-caa-with-vercel) со значением с карточки домена проекта                     | [ALIAS, ANAME или сглаженный CNAME](https://docs.netlify.com/manage/domains/configure-domains/configure-external-dns/), либо A-запись как запасной вариант |
| Сертификаты          | Автоматически, два на хостнейм; собственные сертификаты на Enterprise | Автоматически после подтверждения домена; собственные сертификаты на Enterprise                                                 | [Автоматический Let's Encrypt](https://docs.netlify.com/manage/domains/secure-domains-with-https/https-ssl/); собственные сертификаты продлеваются вручную |
| Wildcard-домены      | Enterprise                                                            | Нужны серверы имён Vercel или делегированный \_acme-challenge                                                                   | Автоматически для доменов на Netlify DNS                                                                                                                   |
| Создан для           | Множества клиентских доменов в одной зоне                             | [Мультитенантных платформ](https://vercel.com/docs/platforms/multi-tenant-platforms/limits) с REST API и SDK                    | Не более нескольких десятков доменов на сайт                                                                                                               |

Поддержка доменов без поддомена у Vercel — самое заметное отличие: клиенты могут направить на него такой домен A-записью. Учтите, что тариф Hobby по [правилам добросовестного использования](https://vercel.com/docs/plans/hobby) Vercel ограничен «только некоммерческим, личным использованием», поэтому платному SaaS нужно начинать с Pro. Рекомендация Netlify не более 50 псевдонимов делает его плохим выбором для одного развёртывания, обслуживающего сотни клиентских доменов.

## Когда это стоит создавать

Если просят два-три клиента, добавьте их хостнеймы в панели Cloudflare и ведите чек-лист. Создавайте самообслуживаемый процесс, когда пользовательские домены становятся частью продаваемого вами тарифа или white-label-предложения. Если клиентам нужны домены без поддомена или wildcard-домены в большом масштабе, обсудите Enterprise с Cloudflare до того, как проектировать систему вокруг лимитов.

Если вы хотите встроить такой процесс в свой продукт — со статусами, уведомлениями и подсказками для поддержки, — [расскажите нам о своём приложении](https://dardo.studio/ru/contact/).

[Nicolás Cerón](https://dardo.studio/ru/studio/)

Nicolás Cerón — основатель Dardo, студии брендинга, веб-дизайна и разработки в Боготе, Колумбия.

## Продолжайте знакомство.

- [Услуга · **Разработка веб-приложений, SaaS и MVP**](https://dardo.studio/ru/services/web-app-development/)

- [Ваш проект · **Начать разговор**](https://dardo.studio/ru/contact/)
