كلاهما يحمل اسم «بروكسي» وكلاهما يتوسط. والفرق يكمن في لصالح مَن يتوسطان. فـ forward proxy وكيل العميل: يرسل الطلب نيابةً عنك. وreverse proxy وكيل الخادم: يستقبل الطلبات نيابةً عن الخادم. وهذا التمييز في جملة واحدة يفسّر كل الفروق الأخرى.
يقف forward proxy في جانب المستخدم، وreverse proxy في جانب الخادم. ويمكن للطلب نفسه أن يمر عبر كليهما؛ فهما ليسا بديلين لبعضهما.
مقارنة الأدوار
جميع المنتجات في هذا الموقع تندرج ضمن فئة forward proxy ؛ أما reverse proxy فهو مكوّن بنية تحتية لمن ينشرون المواقع.
ما فائدة Reverse Proxy؟
يوجد أمام أي موقع ويب حديث تقريبًا reverse proxy دائمًا. ومهامه هي:
الطبقة الأخيرة هي الجدار الذي يواجه الطرف المستخدِم لـ forward proxy: فقواعد تصفية الروبوتات تعمل هنا.
مثال Nginx بسيط
X-Forwarded-For تُضاف الترويسة هنا. أما في جانب forward proxy فالمطلوب عدم إضافتها — فالترويسة نفسها تحمل معنى معاكسًا في المعماريتين.
الترويسة نفسها، معنى معاكس
إن X-Forwarded-For في جانب reverse proxy ممارسة جيدة: فهي تتيح للخادم الخلفي رؤية عنوان IP الحقيقي للزائر. أما في جانب forward proxy فالترويسة نفسها تُفسد التخفي: إذ تنقل عنوانك الحقيقي إلى الموقع الهدف. ويمكنك قياس الترويسات التي يمررها البروكسي لديك اختبار إخفاء الهوية ؛ ونتيجة «Elite» تعني أن هذه الترويسة لا تُرسل إطلاقًا.
نقاط يكثر الخلط فيها
- الـ CDN هو reverse proxy: تتولى خدمات مثل Cloudflare وFastly هذا الدور بالضبط.
- وAPI gateway هو أيضًا reverse proxy: يضيف المصادقة والتوجيه.
- اسم gateway proxy مضلِّل: فـ «gateway» لدى مزوّدي البروكسي هو عنوان دخول واحد وينتمي إلى معمارية forward proxy.
- البروكسي الشفاف هو forward: فهو يعمل نيابةً عن العميل حتى وإن لم يُجرِ المستخدم أي إعداد.
لمنتجات جانب forward proxy راجع residential, ISP و datacenter الصفحات، وللتفريق بين البروتوكولات راجع مقالنا عن HTTP–SOCKS5 لمزيد من التفاصيل.