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 більше торкатися не доведеться.