---
url: 'https://dxpr.com/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82/%D8%AA%D8%B9%D9%84%D9%85-dxpr-builder/%D8%A7%D9%84%D8%A8%D8%AF%D8%A1/%D8%AC%D8%AF%D8%A7%D8%B1-%D8%A7%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D9%88%D8%A5%D9%82%D8%A7%D9%85%D8%A9-%D8%A7%D9%84%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA'
title: 'جدار الحماية وإقامة البيانات | DXPR'
author:
  name: Jurriaan
  url: 'https://dxpr.com/users/jurriaan'
date: '2023-11-06T05:34:28+00:00'
updated: '2026-10-24T17:19:22+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-24T17:19:22+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: '2023-11-06T05:34:28+0000'
      dateModified: '2026-10-24T17:19:22+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/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82/%D8%AA%D8%B9%D9%84%D9%85-dxpr-builder/%D8%A7%D9%84%D8%A8%D8%AF%D8%A1/%D8%AC%D8%AF%D8%A7%D8%B1-%D8%A7%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D9%88%D8%A5%D9%82%D8%A7%D9%85%D8%A9-%D8%A7%D9%84%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA'
      articleSection: 'استيفاء متطلبات الامتثال'
    -
      '@type': WebPage
      '@id': 'https://dxpr.com/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82/%D8%AA%D8%B9%D9%84%D9%85-dxpr-builder/%D8%A7%D9%84%D8%A8%D8%AF%D8%A1/%D8%AC%D8%AF%D8%A7%D8%B1-%D8%A7%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D9%88%D8%A5%D9%82%D8%A7%D9%85%D8%A9-%D8%A7%D9%84%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA'
      description: 'يخزّن DXPR Builder صفحاتكم في قاعدة بيانات Drupal الخاصة بكم. وهو يتصل بخدمات DXPR لفحوصات الترخيص وموارد المحرر وطلبات الذكاء الاصطناعي. تسرد هذه الصفحة كل اتصال، وما يحمله كل واحد منها، وأين تعمل نماذج DXAI Kavya، وكيف يُخزَّن مفتاح المنتج، وما الذي يعمل عند تقييد الوصول الصادر.'
      breadcrumb:
        '@type': BreadcrumbList
        itemListElement:
          -
            '@type': ListItem
            position: 1
            name: الرئيسية
            item: 'https://dxpr.com/ar'
      publisher:
        '@type': Organization
        '@id': 'https://dxpr.com/#organization'
        name: DXPR
      inLanguage: ar
---
[مركز المساعدة](/ar/hc)/[التوثيق](/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82) /[تعلّم DXPR Builder](/ar/hc/documentation/learn-dxpr-builder) /[إدارة الموقع](/ar/hc/documentation/learn-dxpr-builder/manage) /[استيفاء متطلبات الامتثال](/ar/hc/documentation/learn-dxpr-builder/manage/compliance) # جدار الحماية وإقامة البيانات.

 تعلّم DXPR Builderإدارة الموقعاستيفاء متطلبات الامتثال

   ## في هذا الدليل

 أدلة ذات صلة

- [تثبيت DXPR Builder على موقع Drupal](/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82/%D8%AA%D8%B9%D9%84%D9%85-dxpr-builder/%D8%A7%D9%84%D8%A8%D8%AF%D8%A1/%D8%A7%D9%84%D8%AA%D8%AB%D8%A8%D9%8A%D8%AA)
- [الأمان](/ar/hc/documentation/learn-dxpr-builder/advanced/security)
- [أخطاء الترخيص ومفتاح المنتج](/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82/%D8%AA%D8%B9%D9%84%D9%85-dxpr-builder/%D8%A7%D8%B3%D8%AA%D9%83%D8%B4%D8%A7%D9%81-%D8%A7%D9%84%D8%A3%D8%AE%D8%B7%D8%A7%D8%A1-%D9%88%D8%A5%D8%B5%D9%84%D8%A7%D8%AD%D9%87%D8%A7/%D8%A3%D8%AE%D8%B7%D8%A7%D8%A1-%D8%A7%D9%84%D8%AA%D8%B1%D8%AE%D9%8A%D8%B5-%D9%88%D9%85%D9%81%D8%AA%D8%A7%D8%AD-%D8%A7%D9%84%D9%85%D9%86%D8%AA%D8%AC)

يخزّن 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` (طرف ثالث) | متصفح المحرر | يقرأ صفحات الويب التي تظهر عناوينها في أمر نصي | ميزات الذكاء الاصطناعي |
| `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` أبدًا. يرسل المحرر طلبات POST إلى مسارات على موقعكم (`/dxpr_builder/ajax/ai/chat`، و`/dxpr_builder/ajax/ai/image`، و`/dxpr_builder/ajax/ai/image/edit`؛ وكلها تتطلب إذن `edit with dxpr builder` ورمز CSRF وحسابًا مرخّصًا). يمرّر الموقع كل طلب عبر موفّر DXPR لوحدة Drupal AI (`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 حرف وآخر 200 حرف منه |
| عمليات مستوى الصفحة | HTML الصفحة الحالي، حتى 50,000 حرف؛ والصفحة الكاملة عند استبدال الصفحة كلها |
| حقول اختيارية | اسم النموذج وترتيب الموفّرين الممكّنين ونتيجة HTML متوقعة والوسوم والفئات المسموحة وعلامة `web_search` وتنسيق استجابة |
| توليد الصور | الأمر النصي والحجم والجودة والخلفية |
| تحرير الصور | الشيء نفسه مع الصورة المصدر، مشفّرة بـ base64 |

يجلب تسهيلان صفحات الويب من متصفح المحرر (`ai-service-url-fetch.js`): يُطلب عنوان URL في أمر نصي مع إلحاق `.md`، وإذا فشل ذلك فعبر `https://r.jina.ai/<url>`، وهي خدمة قراءة خارجية لا تشغّلها DXPR؛ ويرسل الأمر النصي الذي يطلب استنساخ صفحة العنوان إلى `https://html-extract.dxpr.com/?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 Provider: Anthropic (الولايات المتحدة) وGoogle Gemini (الولايات المتحدة) وMistralAI (فرنسا) وOpenAI (الولايات المتحدة) وXAI (الولايات المتحدة). وفي وضع **الأولوية اليدوية** تسحبون الموفّرين بين **الممكّن** و**المعطّل** وتضبطون ترتيبهم.
- `kavya-m1-eu` يستخدم MistralAI فقط. يذكر ملف README لـ DXPR AI Provider أنه «keeps data within European boundaries (servers in Netherlands)»؛ وتذكر وثائقه أن خادم 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`، الذي ما زال موفّر **الإعدادات** يصدّره. ولا يُبقي المفتاح خارج صادرات الإعدادات إلا موفّر **الملف** أو **البيئة**.
- **تخزين الإعدادات**: يُحفظ المفتاح نصًا صريحًا كـ `dxpr_builder.settings.json_web_token` ويُشمل في صادرات الإعدادات.

مفتاح المنتج رمز JSON Web Token يوثّق مكالمات الترخيص ومكالمة الرصيد وعناوين URL لموارد CDN؛ فتعاملوا معه كبيانات اعتماد.

## ضبط جدار الحماية

| من | السماح بـ HTTPS الصادر إلى | ملاحظات |
|---|---|---|
| خادم Drupal | `dxpr.com` | الترخيص |
| خادم Drupal | `kavya.dxpr.com` | للذكاء الاصطناعي فقط |
| محطات عمل المحررين | `cdn2.dxpr.com`، `cdn.dxpr.com` | موارد المحرر |
| محطات عمل المحررين | `html-extract.dxpr.com`، `r.jina.ai` | للذكاء الاصطناعي فقط؛ وحظرهما يعطّل بحث العناوين والاستنساخ فقط |
| محطات عمل المحررين | `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 | تُتخطى بصمت |

ودون مفتاح منتج إطلاقًا، تطبّق الوحدة حدود المستوى المجاني في الشيفرة: محرر واحد و100 عنصر محتوى.

لذا يعمل النشر المحلي الكامل لعرض المحتوى وتخزينه؛ ويحتاج التحرير وصولًا إلى CDN أو نسخة محرر محلية، ويحتاج التحقق من الترخيص `dxpr.com`. اتصلوا بـ DXPR إذا احتجتم نسخة محرر لاستضافتها داخليًا.

## ما الخطوة التالية؟

- [تثبيت DXPR Builder على موقع Drupal](/ar/hc/documentation/learn-dxpr-builder/getting-started/installation): اضبطوا مفتاح المنتج وطريقة التخزين
- [ميزات الذكاء الاصطناعي](/hc/documentation/learn-dxpr-builder/ai): فعّلوا الذكاء الاصطناعي واختاروا نموذجًا
- [الأمان](/ar/hc/documentation/learn-dxpr-builder/advanced/security): الأذونات وترشيح المخرجات
- [الترخيص ومفتاح المنتج](/ar/hc/%D8%A7%D9%84%D8%AA%D9%88%D8%AB%D9%8A%D9%82/%D8%AA%D8%B9%D9%84%D9%85-dxpr-builder/%D8%A7%D8%B3%D8%AA%D9%83%D8%B4%D8%A7%D9%81-%D8%A7%D9%84%D8%A3%D8%AE%D8%B7%D8%A7%D8%A1-%D9%88%D8%A5%D8%B5%D9%84%D8%A7%D8%AD%D9%87%D8%A7/%D8%A3%D8%AE%D8%B7%D8%A7%D8%A1-%D8%A7%D9%84%D8%AA%D8%B1%D8%AE%D9%8A%D8%B5-%D9%88%D9%85%D9%81%D8%AA%D8%A7%D8%AD-%D8%A7%D9%84%D9%85%D9%86%D8%AA%D8%AC): استكشاف أخطاء الترخيص وإصلاحها