---
url: 'https://dxpr.com/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%BF%D0%BE%D1%87%D0%B0%D1%82%D0%BE%D0%BA-%D1%80%D0%BE%D0%B1%D0%BE%D1%82%D0%B8/%D1%84%D0%B0%D1%94%D1%80%D0%B2%D0%BE%D0%BB-%D1%82%D0%B0-%D1%80%D0%B5%D0%B7%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%BD%D1%96%D1%81%D1%82%D1%8C-%D0%B4%D0%B0%D0%BD%D0%B8%D1%85'
title: 'Фаєрвол і резидентність даних | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2026-10-24T20:05:23+00:00'
updated: '2026-10-24T20:08:10+00:00'
copyright: 'Copyright DXPR. All rights reserved.'
type: article
summary: 'DXPR Builder зберігає ваші сторінки у вашій власній базі даних Drupal. Він звертається до сервісів DXPR для перевірок ліцензії, ресурсів редактора й запитів ШІ. Ця сторінка перелічує кожне з’єднання, що кожне несе, де працюють моделі DXAI Kavya, як зберігається ключ продукту і що працює за обмеженого вихідного доступу.'
tags:
  - 'Meet compliance requirements'
image: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
published: true
og:
  site_name: DXPR
  updated_time: '2026-10-24T20:08:10+0000'
  'image:alt': 'DXPR, powered by Drupal: AI-powered Drupal for marketers.'
schema:
  '@context': 'https://schema.org'
  '@graph':
    -
      mainEntity: {  }
    -
      '@type': TechArticle
      headline: 'Фаєрвол і резидентність даних'
      description: 'DXPR Builder зберігає ваші сторінки у вашій власній базі даних Drupal. Він звертається до сервісів DXPR для перевірок ліцензії, ресурсів редактора й запитів ШІ. Ця сторінка перелічує кожне з’єднання, що кожне несе, де працюють моделі DXAI Kavya, як зберігається ключ продукту і що працює за обмеженого вихідного доступу.'
      image:
        '@type': ImageObject
        url: 'https://dxpr.com/themes/custom/dxpr_com/images/dxpr-share-card.jpg'
        width: '1200'
        height: '630'
      datePublished: '2026-10-24T20:05:23+0000'
      dateModified: '2026-10-24T20:08:10+0000'
      author:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
        url: 'https://dxpr.com/'
        logo:
          '@type': ImageObject
          url: 'https://dxpr.com/themes/custom/dxpr_com/dxpr-logo-dark.svg'
          width: '1348'
          height: '501'
      mainEntityOfPage: 'https://dxpr.com/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%BF%D0%BE%D1%87%D0%B0%D1%82%D0%BE%D0%BA-%D1%80%D0%BE%D0%B1%D0%BE%D1%82%D0%B8/%D1%84%D0%B0%D1%94%D1%80%D0%B2%D0%BE%D0%BB-%D1%82%D0%B0-%D1%80%D0%B5%D0%B7%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%BD%D1%96%D1%81%D1%82%D1%8C-%D0%B4%D0%B0%D0%BD%D0%B8%D1%85'
      articleSection: 'Відповідність вимогам'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%BF%D0%BE%D1%87%D0%B0%D1%82%D0%BE%D0%BA-%D1%80%D0%BE%D0%B1%D0%BE%D1%82%D0%B8/%D1%84%D0%B0%D1%94%D1%80%D0%B2%D0%BE%D0%BB-%D1%82%D0%B0-%D1%80%D0%B5%D0%B7%D0%B8%D0%B4%D0%B5%D0%BD%D1%82%D0%BD%D1%96%D1%81%D1%82%D1%8C-%D0%B4%D0%B0%D0%BD%D0%B8%D1%85'
      description: 'DXPR Builder зберігає ваші сторінки у вашій власній базі даних Drupal. Він звертається до сервісів DXPR для перевірок ліцензії, ресурсів редактора й запитів ШІ. Ця сторінка перелічує кожне з’єднання, що кожне несе, де працюють моделі DXAI Kavya, як зберігається ключ продукту і що працює за обмеженого вихідного доступу.'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: Home
            item: 'https://dxpr.com/uk'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: uk
---
[Help Center](/uk/hc)/[Documentation](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F) /[Вивчення DXPR Builder](/uk/hc/documentation/learn-dxpr-builder) /[Керування сайтом](/uk/hc/documentation/learn-dxpr-builder/manage) /[Відповідність вимогам](/uk/hc/documentation/learn-dxpr-builder/manage/compliance) # Фаєрвол і резидентність даних.

 Вивчення DXPR BuilderКерування сайтомВідповідність вимогам

   ## In this guide

 Related guides

- [Встановлення DXPR Builder на сайт Drupal](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%BF%D0%BE%D1%87%D0%B0%D1%82%D0%BE%D0%BA-%D1%80%D0%BE%D0%B1%D0%BE%D1%82%D0%B8/%D0%B2%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%BD%D1%8F)
- [Безпека](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%B4%D0%BE%D0%B4%D0%B0%D1%82%D0%BA%D0%BE%D0%B2%D0%BE/%D0%B1%D0%B5%D0%B7%D0%BF%D0%B5%D0%BA%D0%B0)
- [Помилки ліцензії та ключа продукту](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D1%83%D1%81%D1%83%D0%BD%D0%B5%D0%BD%D0%BD%D1%8F-%D0%BD%D0%B5%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9/%D0%BB%D1%96%D1%86%D0%B5%D0%BD%D0%B7%D1%96%D1%8F-%D1%96-%D0%BA%D0%BB%D1%8E%D1%87-%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D1%83)

DXPR Builder зберігає ваші сторінки у вашій власній базі даних Drupal. Він звертається до сервісів DXPR для перевірок ліцензії, ресурсів редактора й запитів ШІ. Ця сторінка перелічує кожне з’єднання, що кожне несе, де працюють моделі DXAI Kavya, як зберігається ключ продукту і що працює за обмеженого вихідного доступу.

## З’єднання одним поглядом

| Хост | Хто звертається | Призначення | Потрібно для |
|---|---|---|---|
| `dxpr.com` | Сервер Drupal | Статус ліцензії, перевірка домену, синхронізація ліцензованих користувачів | Редагування |
| `cdn2.dxpr.com` | Браузер редактора | JavaScript і CSS редактора (основні) | Редагування |
| `cdn.dxpr.com` | Браузер редактора | JavaScript і CSS редактора (резервні) | Редагування |
| `kavya.dxpr.com` | Сервер Drupal | Запити ШІ й баланс кредитів ШІ | Функції ШІ |
| `html-extract.dxpr.com` | Браузер редактора | «Клонування з URL» ШІ | Функції ШІ |
| `r.jina.ai` (сторонній) | Браузер редактора | Читає вебсторінки, URL-адреси яких з’являються в запрошенні | Функції ШІ |
| `tuur.dxpr.com` | Браузер редактора | Аналітика використання редактора | Необов’язково |

Усі з’єднання використовують HTTPS на порті 443. Відвідувачі сайта ніколи нічого не завантажують із серверів DXPR: опубліковані сторінки відображаються з HTML, збереженого в базі даних, а скрипт інтерфейсу (`dxpr_builder/dxpr_frontend.min.js`) постачається всередині модуля. `app.dxpr.com` з’являється лише в посиланнях, показаних адміністраторам.

## Перевірки ліцензії (`dxpr.com`)

Сервер Drupal викликає чотири кінцеві точки, визначені у файлі `src/Service/DxprBuilderLicenseServiceInterface.php`, кожну з ключем продукту як заголовком `Authorization: Bearer`.

| Кінцева точка | Коли | Надіслані дані |
|---|---|---|
| `GET /api/user-license` | Кожні 24 години за авторизації, кожні 30 хвилин без неї | `gba` і `users_tier` (кількість облікових записів із дозволом `edit with dxpr builder` і тариф, до якого вона потрапляє), `values_count` (елементи вмісту з полем конструктора), `site_base_url`, `site` (HMAC геш-солі сайта; сама сіль не надсилається), `site_mail` (з `system.site`), `project`, `version` |
| `GET /api/domain-blacklist/{hostname}` | Щогодини | Лише назва хоста; без заголовка авторизації |
| `POST /api/central-user-storage/{add,remove,sync}` | Коли змінюються облікові записи, дозволи або ключ продукту; подальші дії ставляться в чергу й виконуються за cron | Назва хоста плюс, для кожного облікового запису з дозволом редагування, його адреса електронної пошти й назви ролей. Облікові записи без дійсної адреси електронної пошти пропускаються |
| `GET /api/user-license/users` | Коли відкривається сторінка «Ліцензії користувачів» | Нічого, крім ключа |

Вміст сторінки ніколи не є частиною запиту ліцензії. Модуль також друкує прихований `<div>` на головній сторінці з фіксованим рядком-маркером, тарифом ліцензії, кількістю редакторів і кількістю збережень (`dxpr_builder_page_bottom()` у файлі `dxpr_builder.module`). Його видно у джерелі сторінки.

## Ресурси редактора (`cdn2.dxpr.com`, `cdn.dxpr.com`)

Коли для параметра **Ресурси редактора** задано **Хмара** (стандарт), браузер редактора завантажує JavaScript і CSS конструктора з `https://cdn2.dxpr.com/<version>/`, переходячи на `https://cdn.dxpr.com/<version>/`після невдалої перевірки `/health`. Ключ продукту додається до кожної URL-адреси ресурсу як параметр запиту `jwt` (`dxpr_builder_library_info_build()`). CDN перевіряє цей ключ: відповідь 401 змушує `js/editor_validation.js` показати «Ваш ключ продукту недійсний».

Варіанти **Локальні (мініфіковані)** і **Локальні (немініфіковані)**з’являються у формі налаштувань, лише коли зібрана копія редактора існує в каталозі `dxpr_builder/` модуля, і така копія використовується автоматично, навіть коли вибрано «Хмара». Репозиторій git не відстежує ці зібрані файли, тож реліз, завантажений із drupal.org, завантажує редактор з CDN.

## Запити ШІ (`kavya.dxpr.com`)

Браузер ніколи не звертається до `kavya.dxpr.com`. Редактор надсилає запити на маршрути вашого власного сайта (`/dxpr_builder/ajax/ai/chat`, `/dxpr_builder/ajax/ai/image`, `/dxpr_builder/ajax/ai/image/edit`; усі потребують дозволу `edit with dxpr builder`, токена CSRF і ліцензованого облікового запису). Сайт ретранслює кожен запит через постачальника DXPR модуля AI Drupal (`ai_provider_dxpr`) на `https://kavya.dxpr.com/v1/chat/completions`, `/v1/images/generations` або `/v1/images/edits`з автентифікацією ключем DXPR API, збереженим у модулі Key. Налаштування `host` постачальника (`ai_provider_dxpr.settings`) може спрямувати запити на інший хост. Окремо сторінка налаштувань ШІ викликає `GET https://kavya.dxpr.com/v1/account/balance`з ключем продукту, щоб показати ваш баланс кредитів.

### Що містить запит ШІ

Лише функції ШІ надсилають вміст сторінки за межі сайта, і лише коли редактор їх запускає (`dxpr_builder/build/dxpr-global/ai-service.js`).

| Запит | Надісланий вміст |
|---|---|
| Генерування тексту й сторінок | Системне запрошення, запрошення редактора, історія чату |
| З вибраним елементом | Зовнішній HTML елемента: цілком, якщо 500 символів або менше, інакше його перші й останні 200 символів |
| Операції рівня сторінки | Наявний HTML сторінки до 50 000 символів; уся сторінка, коли замінюється ціла сторінка |
| Необов’язкові поля | Назва моделі, порядок увімкнутих постачальників, передбачуваний результат HTML, дозволені теги й класи, прапорець `web_search`, формат відповіді |
| Генерування зображень | Запрошення, розмір, якість, тло |
| Редагування зображень | Те саме плюс вихідне зображення, закодоване base64 |

Дві зручності отримують вебсторінки з браузера редактора (`ai-service-url-fetch.js`): URL-адреса в запрошенні запитується з доданим `.md`, а в разі невдачі через `https://r.jina.ai/<url>`, сторонній сервіс читання, яким не керує DXPR; запрошення, що просить клонувати сторінку, надсилає URL-адресу на `https://html-extract.dxpr.com/?url=...`. В обох випадках надсилається лише URL-адреса.

Вивід ШІ фільтрується на зворотному шляху. Дозволені домени, заблоковані теги й дозволені теги задаються за адресою `/admin/dxpr_studio/dxpr_builder/ai_settings`у розділі **Фільтрування виводу ШІ**.

## Де працюють моделі DXAI Kavya

DXPR Builder пропонує три моделі (`src/Constants/AiModelConstants.php`):

| Модель | Назва API | Опис у формі налаштувань |
|---|---|---|
| DXAI Kavya M1 | `kavya-m1` | Найкраща продуктивність (OpenAI, Google Gemini, Anthropic) |
| DXAI Kavya M1 EU | `kavya-m1-eu` | Орієнтована на приватність (MistralAI) |
| DXAI Kavya M1 Fast | `kavya-m1-fast` | Найшвидші відповіді, нижча якість |

В жодному модулі немає налаштування регіону. Резидентність даних вибирається моделлю й тим, яких висхідних постачальників ви вмикаєте:

- `kavya-m1` перемикається між п’ятьма постачальниками, переліченими з їхньою країною у формі налаштувань постачальника DXPR AI: Anthropic (Сполучені Штати), Google Gemini (Сполучені Штати), MistralAI (Франція), OpenAI (Сполучені Штати), XAI (Сполучені Штати). У режимі **Ручний пріоритет** ви перетягуєте постачальників між **Увімкнено** і **Вимкнено**і задаєте їхній порядок.
- `kavya-m1-eu` використовує лише MistralAI. README постачальника DXPR AI стверджує, що він «тримає дані в межах Європи (сервери в Нідерландах)»; його документація стверджує, що сервер Kavya працює в Нідерландах із резервом у Німеччині, що запити йдуть через сервери MistralAI у Франції і що він ніколи не переходить на постачальника поза ЄС. Ці розташування задокументовано DXPR, а не забезпечено чимось у коді Drupal.

Зі встановленим `ai_provider_dxpr` модель вибирається за адресою `/admin/config/ai/providers/dxpr`, і його налаштування `allowed_models` керує тим, які моделі можуть вибирати редактори. Без нього модель і порядок постачальників задаються за адресою `/admin/dxpr_studio/dxpr_builder/ai_settings`.

## Як зберігається ключ продукту

Розділ **Ліцензія** сторінки `/admin/dxpr_studio/dxpr_builder/settings` пропонує два варіанти **Спосіб зберігання**(`src/Form/DxprBuilderSettingsForm.php`, `src/Service/DxprBuilderKeyService.php`):

- **Модуль Key**: ключ читається з сутності Key, вибраної в полі **Ключ**. `dxpr_builder_update_9020()` переміщує ключ, знайдений у `dxpr_builder.settings`, до сутності Key `dxpr_builder_jwt`, чий постачальник **Configuration**усе ще його експортує. Лише постачальник **File** або **Environment** тримає ключ поза експортом конфігурації.
- **Зберігання в конфігурації**: ключ зберігається у відкритому вигляді як `dxpr_builder.settings.json_web_token` і включається до експорту конфігурації.

Ключ продукту це вебтокен JSON, що автентифікує виклики ліцензії, виклик балансу кредитів і URL-адреси ресурсів CDN; ставтеся до нього як до облікових даних.

## Конфігурація фаєрвола

| Звідки | Дозволити вихідний HTTPS до | Примітки |
|---|---|---|
| Сервер Drupal | `dxpr.com` | Ліцензія |
| Сервер Drupal | `kavya.dxpr.com` | Лише ШІ |
| Робочі станції редакторів | `cdn2.dxpr.com`, `cdn.dxpr.com` | Ресурси редактора |
| Робочі станції редакторів | `html-extract.dxpr.com`, `r.jina.ai` | Лише ШІ; блокування вимикає тільки дослідження URL і клонування |
| Робочі станції редакторів | `tuur.dxpr.com` | Аналітика; блокування не впливає на редагування |

Аналітика (`dxpr_builder/build/dxpr-analytics/`, PostHog) визначає події за адресою електронної пошти редактора й назвою хоста сайта. Вимкніть її командою `drush config:set dxpr_builder.settings record_analytics 0`; ключ не має поля форми. Ще два ключі без поля форми читаються з `dxpr_builder.settings`: `cloud_url` замінює базову URL-адресу CDN (замість `VERSION` підставляється версія модуля), а `license_endpoint` замінює кінцеву точку центрального сховища користувачів. Задайте їх перевизначенням конфігурації у файлі `settings.php`.

## Конфігурація проксі

Виклики ліцензії й ШІ використовують HTTP-клієнт Drupal, тож проксі налаштовується у файлі `settings.php`:

```php
$settings['http_client_config']['proxy'] = [
  'http' => 'http://proxy.example.com:8080',
  'https' => 'http://proxy.example.com:8080',
  'no' => ['localhost', '127.0.0.1'],
];

```

Браузери редакторів завантажують ресурси CDN і викликають сервіси аналітики й читання безпосередньо, тож ці запити наслідують налаштування проксі робочої станції.

## Ізольовані й локальні розгортання

DXPR Builder працює на вашому власному сервері; жоден вміст не проходить через розміщений компонент. Коли ні сервер, ні редактори не можуть досягти DXPR:

| Можливість | Без будь-якого доступу DXPR |
|---|---|
| Обслуговування опублікованих сторінок | Працює; нічого не завантажується з DXPR |
| Зберігання вмісту | Працює; сторінки це значення полів у вашій базі даних |
| Завантаження редактора | Не вдається, якщо локальної збірки редактора немає в `dxpr_builder/` |
| Перевірка ліцензії | Не вдається. Модуль журналює помилку, показує адміністраторам «У нас виникли проблеми з підключенням до серверів DXPR» і повторює кожні 30 хвилин. Редагування не блокується, поки налаштовано ключ продукту |
| Сторінка «Ліцензії користувачів» | Порожня; їй потрібен `dxpr.com` |
| Функції ШІ | Недоступні; кожен запит іде через `kavya.dxpr.com` |
| Аналітика, дослідження URL, клонування з URL | Тихо пропускаються |

Без ключа продукту взагалі модуль застосовує ліміти безкоштовного тарифу в коді: один редактор і 100 елементів вмісту.

Повністю локальне розгортання тому працює для обслуговування й зберігання вмісту; редагування потребує доступу CDN або локальної збірки редактора, а перевірка ліцензії потребує `dxpr.com`. Зверніться до DXPR, якщо вам потрібна збірка редактора для внутрішнього хостингу.

## Що далі?

- [Встановлення](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%BF%D0%BE%D1%87%D0%B0%D1%82%D0%BE%D0%BA-%D1%80%D0%BE%D0%B1%D0%BE%D1%82%D0%B8/%D0%B2%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BB%D0%B5%D0%BD%D0%BD%D1%8F): налаштуйте ключ продукту й спосіб зберігання
- [Функції ШІ](/hc/documentation/learn-dxpr-builder/ai): увімкніть ШІ й виберіть модель
- [Безпека](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D0%B4%D0%BE%D0%B4%D0%B0%D1%82%D0%BA%D0%BE%D0%B2%D0%BE/%D0%B1%D0%B5%D0%B7%D0%BF%D0%B5%D0%BA%D0%B0): дозволи й фільтрування виводу
- [Ліцензія й ключ продукту](/uk/hc/%D0%B4%D0%BE%D0%BA%D1%83%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D1%86%D1%96%D1%8F/%D0%BD%D0%B0%D0%B2%D1%87%D0%B0%D0%BD%D0%BD%D1%8F-dxpr-builder/%D1%83%D1%81%D1%83%D0%BD%D0%B5%D0%BD%D0%BD%D1%8F-%D0%BD%D0%B5%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9/%D0%BB%D1%96%D1%86%D0%B5%D0%BD%D0%B7%D1%96%D1%8F-%D1%96-%D0%BA%D0%BB%D1%8E%D1%87-%D0%BF%D1%80%D0%BE%D0%B4%D1%83%D0%BA%D1%82%D1%83): усунення помилок ліцензії