نظرة عامة #
تشرح هذه المقالة كيفية ترحيل قاعدة iRule بسيطة من F5 BIG-IP تُستخدم لإعادة توجيه HTTP إلى RELIANOID باستخدام ميزات إعادة التوجيه الأصلية لخدمة مزرعة HTTP/S.
تقوم قاعدة iRule الأصلية بإعادة توجيه المستخدمين الذين يصلون إلى عنوان URI الجذر (/) إلى /myapp المسار على نفس المضيف.
قاعدة F5 الأصلية #
عند إرسال طلب HTTP { إذا كان [HTTP::uri] يساوي "/"} { HTTP::redirect "https://[HTTP::host]/myapp" } }
يقوم هذا المنطق بما يلي:
- فحص URI
- حفظ المضيف
- إعادة توجيه HTTPS
- عملية إلحاق المسار
RELIANOID نهج الهجرة #
In RELIANOID، ويمكن تنفيذ هذه الوظيفة بشكل أصلي من خلال:
- خدمات مزرعة HTTP/S
- أنماط مطابقة المضيف
- قواعد إعادة التوجيه
- خيارات الإلحاق أو الوجهة المطلقة
وهذا يلغي الحاجة إلى كتابة البرامج النصية TCL/iRule.
منتجات ينصح بها RELIANOID الاعداد #
هدف التكوين #
عندما يقوم العميل بالوصول إلى:
https://example.com/
يقوم موازن الأحمال بإعادة توجيه العميل إلى:
https://example.com/myapp
الخطوة 1: إنشاء أو تعديل خدمة مزرعة HTTP/S #
انتقل إلى المزارع > مزرعة HTTP/S > الخدمات
الخطوة الثانية: ضبط معايير المطابقة #
استخدم إعدادات مطابقة الخدمة لاكتشاف الطلب المطلوب.
مباراة على أرض الملعب
تكوين Host مطابقة النمط مع اسم المضيف المحدد إذا لزم الأمر، أو تركه فارغًا للمطابقة باستخدام أحرف البدل. مثال: example.com
مطابقة URI
قم بتكوين قاعدة مطابقة عنوان URI: /وهذا يضمن أن عملية إعادة التوجيه تنطبق فقط على الطلبات التي تصل إلى المسار الجذر.
الخطوة 3: تكوين إجراء إعادة التوجيه #
في قسم إجراءات الخدمة، حدد Redirect.
خيارات إعادة التوجيه إلى الوجهة #
RELIANOID يوفر طرق إعادة توجيه مختلفة:
- إلحاق المسار: يُلحق مسارًا بالمضيف الحالي
- عنوان URL مطلق: إعادة التوجيه إلى عنوان URL مؤهل بالكامل
- إعادة توجيه نسبية: إعادة التوجيه باستخدام عنوان URI نسبي
الخيار الموصى به لهذه الهجرة #
بالنسبة لهذه القاعدة البرمجية:
HTTP::redirect "https://[HTTP::host]/myapp"
وأوصت RELIANOID التكوين هو:
نوع إعادة التوجيه: Append
الوجهات السياحية : /myapp
وهذا يحافظ على:
- اسم المضيف الأصلي
- بروتوكول HTTPS
- النطاق الذي طلبه العميل
بديل: عنوان URL مطلق #
أو يمكنك بدلاً من ذلك ضبط الإعدادات التالية:
نوع إعادة التوجيه: Absolute URL
الوجهات السياحية : https://example.com/myapp
وهذا مفيد عندما:
- إعادة التوجيه إلى نطاق آخر
- فرض استخدام عناوين URL الأساسية
- ترحيل التطبيقات
التحقق #
بعد تطبيق الإعدادات، اختبر باستخدام:
curl -I https://example.com/
الرد المتوقع:
HTTP/1.1 301 تم النقل بشكل دائم الموقع: https://example.com/myapp
التحقق من صحة المتصفح #
ساعات العمل :
https://example.com/
السلوك المتوقع:
يقوم المتصفح بإعادة التوجيه تلقائيًا إلى:
https://example.com/myapp
فحص الجهاز #
إعادة التوجيه لا تعمل #
التحقق:
- قواعد مطابقة الخدمات صحيحة
- يتطابق عنوان URI تمامًا /
- نمط مطابقة المضيف صالح
- تم تطبيق تكوين المزرعة
حلقة إعادة التوجيه #
لضمان ما يلي:
/myappمستثنى من قاعدة إعادة التوجيه- لا يقوم تطبيق الواجهة الخلفية بإجراء عمليات إعادة توجيه إضافية متضاربة
بروتوكول HTTPS غير محفوظ #
التحقق:
- تم تكوين المزرعة باستخدام HTTPS
- تم تثبيت شهادات SSL بشكل صحيح
- يحافظ تكوين إعادة التوجيه على المخطط
يتم تطبيق إعادة التوجيه على جميع عناوين URL #
يحدث هذا عادةً إذا كانت مطابقة URI واسعة جدًا.
يجب أن يستهدف التكوين الصحيح / فقط.
أفضل الممارسات #
- يُفضّل استخدام قواعد إعادة التوجيه الأصلية بدلاً من البرمجة النصية كلما أمكن ذلك.
- استخدم وضع الإلحاق لإعادة توجيه التطبيقات على نفس المضيف
- استخدم عمليات إعادة التوجيه المطلقة فقط عند تغيير النطاقات
- تحقق من سلوك إعادة التوجيه باستخدام كل من أدوات المتصفح وأدوات سطر الأوامر
ملخص #
يمكن ترحيل قواعد F5 iRules التي تُجري عمليات إعادة توجيه HTTP إلى RELIANOID استخدام قواعد إعادة توجيه خدمة HTTP/S الأصلية دون الحاجة إلى كتابة البرامج النصية.
يعمل هذا النهج على تبسيط عملية التكوين وتحسين قابلية الصيانة مع الحفاظ على سلوك إعادة التوجيه المكافئ.