يبدو ربط Odoo بنطاقك الخاص مهمة DNS لا تستغرق سوى دقائق، وهذا الجزء غالباً كذلك فعلاً. لكن المشكلات تظهر بعد أسابيع: عميل يضغط زر «العرض عبر الإنترنت» في فاتورة فيصل إلى عنوان لم يعد يعمل، أو يعرض المتصفح تحذيراً بشأن الشهادة في صباح يوم عمل مزدحم. هذه الأعطال مصدرها الطبقات المحيطة بسجل DNS، والتخطيط لها قبل الانتقال يوفر عليك الكثير.
ثلاث طبقات لا طبقة واحدة
للنطاق المخصص في Odoo ثلاثة أجزاء، يتعطل كل منها بمعزل عن الآخر:
- DNS: يوجّه الاسم إلى الخادم.
- شهادة TLS: تجعل المتصفحات تثق بالاتصال.
- الرابط الأساسي في Odoo: العنوان الذي يعتقد Odoo أنه يعمل عليه، ويبني منه كل رابط يرسله.
الطبقتان الأوليان تفشلان بشكل يلاحظه الجميع. أما الثالثة فتفشل بصمت، ولهذا تسبب معظم الضرر.
سجل DNS: نطاق فرعي أم النطاق الرئيسي
لنظام ERP داخلي، يكون النطاق الفرعي مثل erp.yourcompany.com هو الخيار الصحيح في أغلب الحالات. توجّهه إلى مزوّد الاستضافة بسجل CNAME، وإذا نقل المزوّد نظامك لاحقاً إلى خادم آخر يظل السجل يعمل دون أن تلمسه.
أما النطاق الرئيسي (yourcompany.com) فمختلف، إذ لا تسمح قواعد DNS بسجل CNAME في جذر النطاق. لذلك تحتاج إما إلى سجل A يشير إلى عنوان IP ثابت، وهو ما يتعطل إذا تغيّر العنوان، وإما إلى مزوّد DNS يدعم سجلات ALIAS أو ما يُعرف بـ CNAME flattening. وإذا كان تطبيق Website في Odoo هو موقعك العام، فاختر صيغة واحدة معتمدة، بـ www أو بدونها، وأعد توجيه الأخرى إليها توجيهاً دائماً.
وعادة واحدة توفر عليك كثيراً من التوتر: خفّض قيمة TTL للسجل قبل الانتقال بيوم. فإن ظهر خطأ، أعدت توجيه الاسم خلال دقائق بدلاً من انتظار ساعات حتى تنتهي صلاحية النسخ المخزنة مؤقتاً.
الشهادة: التجديد هو ما يفشل
تغطي الشهادة أسماء نطاقات محددة بعينها، فالشهادة الصادرة لـ erp.yourcompany.com لا تغطي www.yourcompany.com، وكل اسم تضيفه يجب أن يُدرج فيها. والشهادات اليوم قصيرة العمر، وتُجدَّد تلقائياً في معظم بيئات الاستضافة. هذا أمر جيد، لكنه يعني أن اللحظة الخطرة ليست الإصدار الأول، بل التجديد الذي يفشل بصمت لأن سجل DNS تغيّر، أو لأن سجل CAA لا يسمح لجهة إصدار الشهادات، أو لأن إعادة توجيه ما تحجب طلب التحقق.
اسأل مزوّد الاستضافة ثلاثة أسئلة: من يجدد الشهادة؟ ومن يتلقى التنبيه إذا فشل التجديد؟ وماذا يحدث عند إضافة اسم نطاق ثانٍ؟
الرابط الأساسي: العنوان الذي يعرفه Odoo عن نفسه
يبني Odoo روابطه الصادرة من معامل نظام اسمه web.base.url. منه تأتي روابط بوابة العملاء في عروض الأسعار والفواتير، ورسائل إعادة تعيين كلمة المرور، ودعوات المستخدمين، وروابط الدفع الإلكتروني، وعناوين العودة التي تعتمد عليها كثير من تكاملات الدفع.
وهنا المفاجأة التي تكتشفها فرق كثيرة بالطريقة الصعبة: عندما يسجّل مستخدم يملك صلاحيات المسؤول (الإعدادات) دخوله، يحدّث Odoo قيمة web.base.url إلى العنوان الذي استخدمه أياً كان. فالمسؤول الذي يسجّل دخوله مرة واحدة عبر عنوان مؤقت أو عنوان IP مباشر أو نطاق قديم، قد يعيد كتابة الروابط في كل رسالة تُرسل بعدها دون أن يلاحظ أحد. لا تظهر أي رسالة خطأ، بل يتلقى العملاء رسائل سليمة مليئة بروابط لا تفتح.
والحل لا يستغرق سوى دقيقتين: بعد أن يعمل النطاق النهائي، اضبط web.base.url على العنوان الكامل بصيغة https، ثم أضف معامل نظام باسم web.base.url.freeze بالقيمة True. من تلك اللحظة يصبح تغيير العنوان قراراً مقصوداً، لا أثراً جانبياً لتسجيل الدخول.
وإذا كنت تستخدم تطبيق Website، فلكل سجل موقع حقل نطاق خاص به. املأه بالعنوان الكامل بصيغة https. وفي إعدادات المواقع المتعددة، هذا الحقل هو ما يحدد الموقع الذي يراه الزائر.
خلف الخادم الوسيط: https من البداية إلى النهاية
يعمل Odoo المستضاف عادة خلف خادم وسيط عكسي (reverse proxy) يتولى الشهادة. ويجب إبلاغ Odoo بذلك عبر إعداد proxy mode، وإلا فقد يبني روابط وعمليات إعادة توجيه بصيغة http رغم أن الزوار وصلوا عبر https. تظهر الأعراض في صورة تحذيرات المحتوى المختلط، وحلقات تسجيل دخول لا تنتهي، وصفحات تتنقل بين العناوين. والصور المضمّنة في صفحات الموقع بروابط http ثابتة تسبب التحذيرات نفسها. في الاستضافة المُدارة، إعداد الخادم الوسيط من مسؤولية المزوّد، وإذا شغّلت Odoo بنفسك فهو مسؤوليتك.
تغيير النطاق لاحقاً
تغيير النطاق يحدث أكثر مما يُتوقع: إعادة تسمية العلامة التجارية، أو اندماج، أو انتقال من العنوان الافتراضي لمزوّد الاستضافة إلى نطاقك الخاص. وقائمة تحقق قصيرة تغطي معظم المخاطر:
- أبقِ النطاق القديم يعيد التوجيه إلى الجديد لأشهر لا لأيام، فالرسائل المرسلة سابقاً ما زالت تحمل الروابط القديمة.
- حدّث web.base.url وحقل نطاق الموقع، ثم جمّد الرابط الأساسي مجدداً.
- حدّث كل تكامل يحتفظ بعنوان إعادة توجيه أو استدعاء: تسجيل الدخول عبر Google أو Microsoft، وwebhooks مزوّدي الدفع، وموصلات الشحن والمراسلة.
- نبّه المستخدمين إلى أنهم سيُسجَّل خروجهم، فجلساتهم مرتبطة بالنطاق القديم.
- تذكّر أن النطاق المستخدم لعناوين البريد الواردة يُضبط بشكل منفصل، وتغيير عنوان الويب لا يغيّر وجهة الردود.
جرّب التغيير على نسخة staging أولاً: سجّل الدخول، وأرسل عرض سعر تجريبياً إلى نفسك، واضغط كل رابط فيه. هذا الاختبار الذي لا يتجاوز عشر دقائق يكشف ما تفوته قوائم التحقق.
ما يملكه مزوّد الاستضافة وما تملكه أنت
يستحق هذا التقسيم أن يُقال بوضوح. توجيهات DNS، وإصدار الشهادات وتجديدها، وإعداد الخادم الوسيط، كلها بنية تحتية ينبغي أن يتولاها مزوّد الاستضافة المُدارة. أما الرابط الأساسي ونطاق الموقع وعناوين إعادة التوجيه المسجلة لدى تكاملاتك، فتعيش داخل قاعدة بياناتك وحساباتك لدى الأطراف الأخرى، لذا تبقى جزءاً من إعداداتك أياً كان مزوّد الاستضافة. وعندما تقيّم أي مزوّد لاستضافة Odoo، اسأله بدقة: في أي جانب من هذا الخط يقع كل بند؟
وإذا فضّلت تسليم الجزء الخاص بقاعدة البيانات إلى فريق يتعامل معه بشكل روتيني، فخدمة الدعم المُدار واتفاقيات مستوى الخدمة لدينا هي نقطة البداية. وإذا كنت تريد استضافة تكون فيها بيئات الاختبار والمراقبة والنسخ الاحتياطي التلقائي والاستعادة إلى نقطة زمنية جزءاً من الإعداد الأساسي، فإن Plemo تقدم استضافة Odoo مُدارة مبنية لهذا الغرض.
