النشر والنطاقات
Video coming soon
فيديو جولة النشر في الطريق. في هذه الأثناء، يغطّي هذا الدرس مجموعة Ship من البداية إلى النهاية: انشر واجهتك وراجع عمليات النشر واضبط المتغيّرات واربط نطاقاً مخصصاً.
عندما يعمل تطبيقك، حان وقت نشره. كل ما يخص الواجهة يعيش تحت قسم Ship → Frontend، مقسوماً إلى أربعة عناصر فرعية: Overview و Deployments و Variables و Domains. يمرّ هذا الدرس بكل منها.
انشر واجهتك
يُقدَّم تطبيقك على نطاق فرعي مجاني *.dypai.app. من Ship → Frontend → Overview يمكنك رؤية عنوان URL للموقع المباشر ومعاينة الجهاز وزر نشر وتنزيل ZIP ورابط GitHub وشريط استخدام.
افتح Ship → Frontend
في الشريط الجانبي لمشروعك، وسّع Ship → Frontend وابقَ على تبويب Overview. سترى عنوان موقعك على *.dypai.app ومعاينة مباشرة.
انشر
شغّل نشراً من النظرة العامة (أو انشر من Studio / عميل الذكاء الاصطناعي). تبني DYPAI الواجهة وتقدّمها من النطاق الفرعي — شارك ذلك العنوان مع أي شخص فوراً.
تأكد أنه مباشر
افتح عنوان *.dypai.app وأكّد أن التطبيق يُحمَّل. يبقى تطبيقك المنشور مباشراً بغض النظر عن رصيد أرصدة الذكاء الاصطناعي — تغطي الأرصدة عمل البناء/التعديل فقط، لا التطبيقات قيد التشغيل.
عمليات النشر والتراجع
يُحفظ كل نشر. يعرض العنصر الفرعي Deployments (المسار /deployments) — منفصل عن نظرة عامة الواجهة — بناءاتك السابقة مع سجلاتها، حتى تراجع ما نُشر وتراجع إلى إصدار سابق بنقرة واحدة إذا انكسر شيء.
السجل الكامل والتراجع ميزة Pro
سجل النشر الكامل والتراجع بنقرة واحدة جزء من خطة Pro. على المجانية يمكنك النشر إلى نطاقك الفرعي، لكن السجل الطويل والتراجع يعيشان مع Pro.
المتغيّرات: أسرار الخلفية مقابل متغيّرات بناء الواجهة
لتبويب Variables (المسار /variables) تبويبان — والفرق مهم للأمان:
- Backend Secrets (التبويب الافتراضي) — أسرار تشغيل مشفّرة بالاسم (Fernet، لكل مشروع). للكتابة فقط ولا تُشحن إلى المتصفح أبداً. أشر إليها في سير العمل وendpoints كـ
ctx.secrets.Xأو${ secrets.X }. هنا مكان مفاتيح API والرموز. - Frontend (Build) — متغيّرات عامة وقت البناء تُدمَج في حزمة العميل. أي شيء هنا يُشحن إلى المتصفح، لذا استخدمه فقط للقيم غير السرية (اسم موقع عام أو علم ميزة).
لا تضع أسراراً في Frontend (Build)
تنتهي متغيّرات بناء الواجهة داخل حزمة العميل وتكون مرئية لأي شخص. الأسرار الحقيقية — مفاتيح API وأسرار التوقيع — تذهب في Backend Secrets وتُقرأ من جانب الخادم عبر ctx.secrets.X. راجع أسرار الخلفية.
ربط نطاق مخصص
افتراضياً يعيش تطبيقك على *.dypai.app. لاستخدام نطاقك مع SSL، افتح Ship → Frontend → Domains وأضفه. تتطلب النطاقات المخصصة خطة Pro (المجانية نطاق فرعي فقط).
رقِّ إلى Pro (إن لزم)
النطاقات المخصصة و SSL ميزة Pro. على المجانية يبقى تطبيقك على نطاقه الفرعي *.dypai.app.
أضف نطاقك
في Ship → Frontend → Domains، أدخل النطاق الذي تملكه واتبع تعليمات DNS التي تعرضها DYPAI. يُوفَّر SSL تلقائياً للنطاق الدقيق الذي تضيفه.
أضف كلاً من apex و www
إضافة apex (example.com) لا تربط www.example.com تلقائياً، والعكس. إذا أردت أن يُحل كلاهما، أضف كلا الإدخالين.
تحقق من الحل
انتظر انتشار DNS ثم افتح نطاقك. بمجرد التحقق، تغطي الشهادة النطاق الدقيق الذي أضفته.
apex ≠ www
كل شكل مستقل: apex والنطاق الفرعي www إدخالان منفصلان. أضف كليهما إذا أردت أن يصل الزوار إلى موقعك بأي من العنوانين.
شراء نطاق قادم قريباً
لتبويب Domains حوار بحث يمكنك فيه البحث عن نطاقات، لكن الشراء داخل التطبيق «قادم قريباً» (مقيّد حتى تُربَط الفوترة). حالياً، سجّل نطاقك في مكان آخر واربطه هنا.
ما ستتعلمه
- نشر واجهتك إلى نطاقها الفرعي
*.dypai.app - مراجعة Deployments واستخدام التراجع بنقرة واحدة (ميزة Pro)
- تبويبا Variables — Backend Secrets (مشفّرة،
ctx.secrets.X) مقابل متغيّرات بناء الواجهة (عامة) - ربط نطاق مخصص مع SSL على Pro، بما فيها مأزق apex/www
- أن التطبيقات المنشورة تبقى مباشرة بغض النظر عن رصيد أرصدة الذكاء الاصطناعي