WzGate
Build your own website

تعريف موقعك

كيف يُربط الطلب العام بموقع واحد — النطاق المُضاف ثم X-Site ثم X-Subdomain المهجورة — وماذا يجيب الموقع المسوّدة أو الموقوف مؤقتًا.

يمكن للمؤسسة أن تدير عدّة مواقع عامّة في الوقت نفسه: موقع عقارات، وبوابة إقامات، وملف شركة. لذلك يعرّف الطلب العام موقعًا، لا مؤسّسة فقط، وكل إجابة هي محتوى ذلك الموقع وحده.

ترتيب التعرّف

تجرّب الواجهة ثلاثة أشياء بهذا الترتيب، وتتوقّف عند أوّل ما ينجح.

  1. النطاق الذي جاء منه الطلب. تُطابَق ترويسة Origin (من المتصفّح) أو Host (من الخادم) مع النطاقات المضافة إلى الموقع في الإعدادات ← المواقع ← النطاقات. المطابقة تعرّف الموقع بلا أي ترويسة.
  2. X-Site: <مفتاح الموقع>. مفتاح الموقع من تبويب «اربط موقعك». هذه هي الطريقة الصريحة، وهي المفضّلة.
  3. X-Subdomain: <نطاق المؤسّسة الفرعي> — مهجورة. تعرّف الموقع الافتراضي للمؤسّسة. ما زالت تعمل، وستُحذف بعد مهلة معلنة؛ انظر سجلّ التغييرات.

ويمكن أن تجتمع اثنتان: حين يصل الطلب من نطاق مُضاف ويحمل X-Site، يجب أن يسمّي المفتاح موقعًا تابعًا لمؤسّسة ذلك النطاق. وإن سمّى موقع غيرك فالجواب 403 SITE_ORIGIN_MISMATCH — وهذا هو المقصود: لا يستطيع نطاق أن يقرأ محتوى مستأجر آخر بتخمين مفتاح.

GET /api/public/properties?page=1&perPage=24 HTTP/1.1
Host: crm.example.com
X-Site: my-site
X-Api-Key: pk_my-site_0123456789abcdef01234567

لماذا يحتاج نشر المعاينة إلى X-Site

تعمل معاينة Vercel على اسم مضيف مولّد — my-site-git-feature-team.vercel.app — ليس من نطاقات موقعك ولن يكون: وإلّا لأضفت نطاقًا جديدًا مع كل فرع. فالقاعدة الأولى لا تنطبق، وبلا X-Site لا يعرّف الطلب شيئًا ويُرفض قبل أن يصل إلى كودك.

اضبط NEXT_PUBLIC_SITE_KEY في بيئة المعاينة كما في الإنتاج، فيتعرّف كل نشر على نفسه أيًّا كان المضيف الذي قُدِّم منه. أما نداءات المتصفّح فتحتاج إلى CORS، وهو لا يُفتح إلا لنطاقات الموقع — فالمعاينة التي تنادي الواجهة من المتصفّح إمّا أن تمرّ عبر خادمك أنت (مُعالِج مسار)، أو أن تعمل على مضيف أضفته.

المواقع المسوّدة والموقوفة

للموقع حالة، والواجهة العامّة تحترمها:

الحالةالإجابة العامّة
منشورطبيعي.
مسوّدة404 SITE_NOT_FOUND — لم يُنشر هنا شيء بعد. والمؤسّسة التي لا تملك موقعًا أصلًا تجيب الإجابة نفسها.
موقوف مؤقتًا503 SITE_PAUSED — «هذا الموقع متوقّف مؤقتًا».

وكلاهما مقصود: الموقع المسوّدة يجب ألّا يُميَّز عن موقع غير موجود، والموقوف يجب أن يقول «عُد لاحقًا» لا «اختفى».

فإن أجاب موقع أنشأته للتوّ بـ 404، فالأرجح أنه ما زال مسوّدة — انشره من رأس صفحة الموقع في النظام.

النطاق يعمل لحظة إضافته

إضافة نطاق في الإعدادات ← المواقع ← النطاقات تجعله صالحًا فورًا: يعرّف الموقع، ويُفتح له CORS. لا سجلّ TXT تنشره ولا خطوة تحقّق تنتظرها. وأول نطاق تضيفه يصير النطاق الأساسي.

ولا يمكن أن ينتمي المضيف إلى أكثر من موقع واحد على المنصّة كلّها — فإضافة مضيف تملكه مؤسّسة أخرى تجيب 409 DOMAIN_TAKEN.

بعد ذلك

On this page