Skip to content

Домены и Cloudflare ​

PWA Hub сам управляет DNS ваших доменов через Cloudflare API. Как только вы подключаете домен к PWA или сплиту, продукт создаёт для него зону в Cloudflare (если её ещё нет) и проксируемые записи, указывающие на IP вашего сервера. Для доменов приложений вам не нужно вручную прописывать A-записи - достаточно один раз подключить аккаунт. Единственная запись, которую придётся создать руками, - для домена самой панели (см. ниже).

Работает всё по SSL-режиму Full: при установке PWA Hub на сервере ставится самоподписанный origin-сертификат, а Cloudflare терминирует внешний HTTPS и общается с вашим сервером по зашифрованному каналу. Плюс продукт автоматически восстанавливает реальный IP посетителя из заголовков Cloudflare - в статистике и логах вы видите настоящие адреса, а не адреса прокси.

Что это даёт на практике

Один раз настроив аккаунт Cloudflare, вы дальше просто добавляете домены в пару кликов - DNS, проксирование и HTTPS настраиваются за вас.

Что подготовить в Cloudflare ​

Эта часть делается один раз во внешней панели Cloudflare - до установки PWA Hub, потому что без DNS вы не откроете саму панель.

  1. Заведите аккаунт на cloudflare.com (или используйте свой).
  2. Создайте API Token с правами на зоны и DNS (как - сразу ниже). Именно токен, а не Global API Key - его вы вставите в панель после установки.
  3. У регистратора вашего домена пропишите NS-серверы Cloudflare (Cloudflare покажет их, когда вы добавите домен в свой аккаунт). После смены серверов имён должно пройти некоторое время, пока зона активируется.
  4. В настройках SSL/TLS выставьте режим Full.

Как создать API Token ​

Токен создаётся в профиле аккаунта, а не в настройках отдельного домена. Кликните по иконке профиля в правом верхнем углу Cloudflare → My Profile, слева выберите API Tokens и нажмите Create Token.

На странице Create API Token пролистайте к блоку Custom token и нажмите Get started. Готовые шаблоны (например Edit zone DNS) не подходят: они дают права только на записи внутри существующих зон, а PWA Hub создаёт ещё и сами зоны.

Создание API Token в Cloudflare

Заполните форму Create Custom Token:

  1. Token name - любое понятное имя, например pwa.
  2. Permissions - две строки (вторую добавьте ссылкой + Add more):
ГруппаРесурсУровень
ZoneZoneEdit
ZoneDNSEdit
  1. Zone Resources - Include → All zones, чтобы токен работал со всеми доменами аккаунта, включая те, которые вы добавите позже.
  2. Client IP Address Filtering - оставьте пустым: если ограничить токен по IP, после переезда на другой сервер он перестанет работать.
  3. TTL - оставьте пустым, чтобы у токена не было срока действия.

Права API Token

Нажмите Continue to summary, проверьте список прав и подтвердите кнопкой Create Token. Cloudflare покажет значение токена только один раз - скопируйте его сразу и сохраните: он понадобится, когда вы будете подключать аккаунт в панели.

Почему нужны обе строки прав

Zone → DNS → Edit позволяет управлять записями только внутри уже существующих зон. Zone → Zone → Edit нужен, чтобы PWA Hub мог создать зону для нового домена с нуля. С уровнем Read вместо Edit домены подключаться не будут.

Если зоны не создаются

В Zone Resources вместо Include → All zones выберите Include → All zones from an account и укажите ваш аккаунт - тогда токен получает права на уровне аккаунта, а не только на уже существующие зоны.

Токен потерялся

Посмотреть значение повторно нельзя. Откройте список API Tokens, в меню нужного токена выберите Roll - Cloudflare выдаст новое значение, а старое сразу перестанет работать. Новое значение нужно будет заново вставить в панель, в разделе Cloudflares (см. «Аккаунты Cloudflare»).

Режим SSL обязательно Full

На сервере стоит самоподписанный сертификат. При режиме Flexible соединение до сервера пойдёт по HTTP, а при Full (strict) Cloudflare будет требовать доверенный сертификат и вернёт ошибку. Правильный вариант - именно Full.

Откройте SSL/TLS → Overview - там виден текущий режим шифрования между посетителем, Cloudflare и вашим сервером.

Обзор SSL/TLS в Cloudflare

Нажмите Configure, выберите Full и сохраните кнопкой Save.

Выбор режима шифрования Full

Запись для домена панели ​

Домен панели вы выбираете сами и указываете при активации лицензии: обычно это поддомен admin.<ваш-домен>, но подойдёт любой другой хост или отдельный домен. Эту DNS-запись нужно создать вручную - без неё после активации лицензии панель не откроется. Домены для приложений продукт заведёт сам позже; руками создаётся только эта одна запись.

В панели Cloudflare откройте ваш домен, слева выберите DNS → Records и нажмите Add record. Заполните поля:

  1. Type - A.
  2. Name - имя хоста панели, например admin.
  3. IPv4 address - IP вашего сервера (тот, на который вы ставили PWA Hub).
  4. Proxy status - включите проксирование (Proxied, оранжевое облако).
  5. TTL - оставьте Auto.

Нажмите Save.

Добавление A-записи для домена панели в Cloudflare (в примере - admin)

ТипИмяЗначениеПрокси
Aхост панели, например adminIP вашего сервераProxied (оранжевое облако)

Корневой домен по желанию

Если планируете использовать и сам домен (без admin), добавьте такую же запись A для корневого домена - в поле Name укажите @. Записи в Cloudflare применяются обычно за минуту, после чего домен панели начнёт резолвиться на сервер.

Итог: что должно быть готово до установки ​

  • Аккаунт Cloudflare и API Token с правами Zone → Zone → Edit и Zone → DNS → Edit на All zones - значение токена сохранено в надёжном месте.
  • У регистратора домена прописаны NS-серверы Cloudflare, зона активировалась.
  • В Cloudflare выставлен режим SSL/TLS = Full.
  • Создана запись A для хоста панели (например, admin) на IP сервера, проксирование включено.

Дальше вы поставите PWA Hub (см. «Установка PWA Hub»), войдёте в панель по IP сервера, активируете лицензию с этим доменом и подключите аккаунт Cloudflare в разделе Cloudflares - как это сделать, описано в разделе «Аккаунты Cloudflare». Домены для приложений после этого создаются автоматически, вручную DNS больше трогать не придётся.