إعداد الوكيل العكسي في ServBay: ربط المواقع الداخلية أو البعيدة للتطوير والتصحيح المحلي
يُعد ServBay بيئة تطوير ويب محلية قوية تدعم macOS وWindows، وتتيح لك العمل مع لغات متعددة مثل PHP، Node.js، Python، Go، وJava، بالإضافة إلى قواعد بيانات مثل MySQL، PostgreSQL، MongoDB، وRedis. بالإضافة لاستضافة مشاريع الكود المحلي، يوفر ServBay خاصية الوكيل العكسي بشكل متقدم. عبر الوكيل العكسي، يمكنك بسهولة ربط مواقع الويب الموجودة داخل الشبكة الداخلية، أو على أجهزة افتراضية، أو حاويات، أو حتى خوادم بعيدة ببيئة ServBay المحلية لديك، مما يُبسط عملية التطوير، التصحيح، والوصول لهذه الخدمات.
ستجد في هذا الدليل شرحًا مفصلًا لكيفية إعداد الوكيل العكسي عبر ServBay، ليسهل عليك ربط مواقع الويب الداخلية أو العناوين الأخرى ببيئتك المحلية للتطوير والتصحيح بكفاءة وإدارة موحدة.
نظرة عامة
يستقبل خادم الوكيل العكسي الطلبات من العملاء (مثل متصفحك)، ثم يوجهها إلى خوادم خلفية (في هذه الحالة الموقع الداخلي أو البعيد الذي ترغب في ربطه). يعتمد ServBay على خوادمه الداخلية (Caddy أو Nginx) لتقديم هذه الوظيفة.
أهم الفوائد لإعداد الوكيل العكسي في بيئة تطوير محلية:
- مدخل موحد للوصول: يمكنك استعمال دومين ServBay المحلي للوصول إلى كل الموارد الداخلية أو الخارجية بدون الحاجة لتذكر عناوين IP أو منافذ معقدة.
- تسهيل إعدادات SSL: يُمكنك الاستفادة من إدارة SSL في ServBay (مثل ServBay CA أو ACME) لتقديم وصول HTTPS للموقع حتى لو كان يدعم HTTP فقط من الخلف.
- تصحيح محلي: يمنحك القدرة على تصحيح تطبيقات الويب الداخلية أو البعيدة بسهولة من متصفحك المحلي.
- تجاوز القيود الشبكية: في حالات معينة، يمكنك الوصول بسهولة لموارد الشركة أو الشبكات المغلقة من بيئة عملك المحلي (طالما الجهاز الذي يعمل عليه ServBay قادر على الوصول للعنوان المطلوب).
المتطلبات الأساسية
قبل البدء في إعداد الوكيل العكسي، تأكد من:
- تثبيت وتشغيل ServBay: يجب أن يكون البرنامج مُثبتًا بشكل صحيح ويعمل على جهاز الـ macOS الخاص بك.
- إمكانية الوصول إلى الموقع الهدف: الموقع الداخلي أو البعيد الذي ترغب في ربطه يجب أن يكون يعمل بشكل طبيعي، وجهاز الـ macOS يجب أن يكون قادرًا على الوصول إليه من خلال عنوان الـ IP أو الدومين والميناء بشكل مباشر. مثلًا، إذا كان الهدف
192.168.1.100:8080
، تأكد أن جهازك يستطيع إجراء ping على192.168.1.100
والوصول لـ192.168.1.100:8080
.
خطوات إضافة موقع وكيل عكسي
اتبع الخطوات التفصيلية التالية لإعداد موقع وكيل عكسي في ServBay:
الخطوة 1: فتح واجهة إدارة ServBay
اذهب إلى مجلد التطبيقات على جهاز الـ macOS، وابحث عن أيقونة ServBay
وانقر عليها لتشغيل التطبيق.
الخطوة 2: الانتقال إلى إدارة المواقع
بعد تشغيل ServBay، ستجد الواجهة الرئيسية للتطبيق. من قائمة التنقل الجانبية، اختر المواقع
. ستظهر لك صفحة إدارة المواقع، حيث يمكنك التحكم في جميع المواقع المحلية ومواقع الوكيل العكسي.
الخطوة 3: إضافة موقع جديد
اذهب لأسفل صفحة إدارة المواقع ثم انقر على زر +
. سيظهر لك نموذج جديد على الجانب الأيمن لإعداد بيانات الموقع الجديد.
الخطوة 4: إعداد معلومات الوكيل العكسي
في نموذج إعداد الموقع الجديد، ستحتاج إلى إدخال معلومات مهمة لتعريف سلوك الوكيل العكسي:
- الاسم (Name): اختر اسمًا يُميز موقع الوكيل العكسي، مثل:
Internal Backend Proxy
. - الدومين (Domain): أدخل الدومين المحلي الذي تريد من خلاله الوصول للموقع المربوط، مثل:
backend.servbay.demo
أوproxy.to.local
. غالبًا سيقوم ServBay بإضافة الدومين مباشرة لملفhosts
في النظام ليتم توجيهه إلى127.0.0.1
أو::1
. - البروتوكول (Protocol): اختر البروتوكول المناسب، غالبًا
HTTP/HTTPS
ليتم دعم الخيارين بسهولة. يتكفل ServBay بإدارة SSL تلقائيًا حسب الإعداد. - طريقة طلب شهادة SSL (SSL Certificate Request Method):
- ServBay CA (موصى به للتطوير المحلي): عند اختيار هذا الخيار سيقوم ServBay بإنشاء وإدارة شهادة SSL تلقائيًا عبر سلطة شهاداته الداخلية (CA). ستحتاج إلى الوثوق بشهادة ServBay CA الجذرية في متصفحك أو نظامك لتجنب تحذيرات الشهادة.
- ACME (Let's Encrypt): إذا كان لديك دومين عام قابل للوصول من الإنترنت، يمكنك استخدام هذا الخيار لطلب شهادة SSL مجانية من Let's Encrypt.
- يدوي (Manual): إذا كان لديك ملفات شهادة جاهزة (
.crt
,.key
,.ca-bundle
)، يمكنك رفعها وتكوينها يدويًا. لموارد التطوير المحلية والداخلية، يُنصح بشدة بـServBay CA
.
- نوع الموقع (Website Type): اختر
وكيل عكسي (Reverse Proxy)
—هذه هي الخاصية المهمة لتفعيل الوكالة. - هدف الوكيل (Proxy Target): أدخل عنوان الوصول الكامل لموقعك الداخلي أو البعيد. يمكن أن يكون بصيغة
IP:Port
أو عنوان URL مكتمل مع البروتوكول.- مثال 1 (IP:Port):
192.168.1.100:8080
- مثال 2 (عنوان URL مع بروتوكول):
http://192.168.1.100:8080
- مثال 3 (اسم مضيف داخلي):
backend.internal:8443
(يجب أن يكون اسم المضيف قابلًا للحل من جهاز ServBay) - مثال 4 (عنوان URL بعيد):
https://api.example.com
تأكد دائمًا أن العنوان المدخل يمكن الوصول إليه مباشرة من جهاز ServBay.
- مثال 1 (IP:Port):
الخطوة 5: إتمام وحفظ الإعدادات
بعد إدخال جميع البيانات المطلوبة، اضغط على زر إضافة (Add)
أسفل النموذج. سيقوم ServBay بحفظ الإعداد تلقائيًا، وإنشاء قواعد الوكيل العكسي اللازمة في خادميه (Caddy أو Nginx).
بعد نجاح الحفظ ستلاحظ ظهور الموقع الجديد ضمن قائمة المواقع.
الخطوة 6: الوصول إلى موقع الوكيل العكسي
بعد إكمال الإعداد، يمكنك التوجه إلى متصفحك وكتابة الدومين الذي اخترته في الخطوة 4 (مثل proxy.to.local
أو backend.servbay.demo
) للوصول مباشرة للموقع الداخلي أو البعيد عبر ServBay.
لو استخدمت ServBay CA واخترت HTTPS، قد تظهر لك تحذيرات شهادة في المرة الأولى (إذا لم تكن قد وثقت شهادة ServBay CA الجذرية من قبل).
الخطوة 7: إدارة الموقع بسرعة
يمنحك ServBay مجموعة من أزرار الإدارة السريعة لكل موقع:
- فتح مجلد الجذر عبر IDE: غالبًا غير مستخدم في مواقع الوكالة لأنها لا تملك مسارًا محليًا.
- فتح الموقع في المتصفح: وصول سريع للموقع في متصفحك الافتراضي.
- عرض سجلات الموقع: لمعرفة سجلات الطلبات والأخطاء الخاصة بالخادم (Caddy/Nginx)، وهذا مهم للتصحيح.
- إيقاف/تشغيل الموقع: تعطيل أو تفعيل إعداد الوكيل العكسي مؤقتًا.
- حذف الموقع: لإزالة إعداد الوكيل العكسي من ServBay.
الأسئلة الشائعة وحلول المشاكل (FAQ)
س: الموقع لا يعمل ويظهر خطأ في المتصفح.
- تحقق من حالة ServBay: تأكد أن البرنامج وخوادمه (Caddy/Nginx) تعمل.
- تأكد من توجيه الدومين: تحقق من كتابة الدومين بشكل صحيح وحلّه إلى عنوان IP المحلي (يعدّل ServBay ملف
hosts
تلقائيًا غالبًا، لكن راجع يدويًا إذا لزم الأمر). - اطلع على سجلات ServBay: استعن بزر "عرض السجلات" لرؤية نشاط الخادم وأي أخطاء أثناء محاولة الوكالة؛ هذه أهم وسيلة لتحديد المشكلة.
- راجع إعدادات الجدار الناري/الأمان: تأكد أن جدار حماية macOS أو برامج الأمان لا تمنع ServBay من الاستماع على المنافذ 80 و443 أو الوصول للعنوان الهدف.
س: جهاز ServBay يصل لهدف الوكالة، لكن تصفح الدومين عبر ServBay يعطي خطأ.
- تحقق من صيغة "هدف الوكالة": تأكد أن عنوان الموقع في إعداد ServBay مكتوب بشكل صحيح وقابل للوصول مباشرة. جرب الأمر
curl [عنوان الهدف]
من طرفية جهازك لاختبار الوصول. - راجع إعدادات خادم الهدف: بعض الخوادم الخلفية تتحقق من طلب "Host"؛ ينقل ServBay بشكل افتراضي رأس Host الأصلي للعميل. إذا كان الخادم يتطلب "Host" معين وكنت تستخدم دومين مختلف عبر ServBay، قد تحدث مشاكل. يمكنك ضبط رؤوس الطلب المتقدمة من إعدادات متقدمة (عن طريق تحرير Caddyfile أو إعدادات Nginx يدويًا).
- فحص جدار الحماية في الخادم الهدف: ممكن يكون الخادم الخلفي يسمح باتصال من نطاق IP محدد؛ تأكد أنه يسمح باتصال جهاز ServBay.
س: عند استخدام HTTPS تظهر تحذيرات شهادة للموقع الوكيل.
- إذا اخترت ServBay CA: هذا متوقع، لأن ServBay CA سلطة غير معتمدة افتراضيًا من المتصفحات العامة. يلزم تثبيت شهادة ServBay CA الجذرية على نظامك أو متصفحك يدويًا لتجاوز التحذير.
- إذا اخترت ACME (Let's Encrypt): تحقق من أن الدومين يحل بشكل صحيح إلى جهاز ServBay، وتأكد من نجاح طلب الشهادة عبر منصة إدارة SSL في ServBay. راجع السجلات لتفاصيل أخطاء ACME.
س: كيف أجعل الوكالة تدعم رؤوس أو كوكيز محددة؟
بشكل افتراضي، ServBay ينقل معظم بيانات طلب العميل. أما في الحالات المتقدمة (مثلاً، إضافة رؤوس مخصصة، تعديل رؤوس الاستجابة، التعامل مع كوكيز خاصة، أو إعادة كتابة المسارات)، ستحتاج إلى الدخول لإعدادات ServBay المتقدمة لتحرير ملفات Caddyfile أو Nginx لإضافة قواعد وكالة عكسية مفصلة. يتطلب ذلك معرفة جيدة بإعدادات الخوادم المذكورة.
الملخص
يتيح لك ServBay عبر خاصية الوكيل العكسي ربط مواقع الويب الداخلية، الأجهزة الافتراضية، الحاويات أو الخوادم البعيدة بسهولة إلى بيئة تطويرك المحلية. يُمنحك هذا نقطة وصول موحدة وسهلة، ويسهل التصحيح المحلي وإعدادات SSL. باتباع الخطوات الواردة في هذا الدليل، يمكنك تفعيل وبدء استخدام مواقع الوكالة العكسية بسرعة. ومع ميزات عرض السجلات وحلول المشاكل المتقدمة في ServBay، ستضمن ثبات وكفاءة موقعك الوكيل، وزيادة إنتاجيتك بشكل ملحوظ أثناء التطوير.