دليل النشر

انشر تطبيقاتك باستخدام Caddy على خادم VPS

انشر على VPS Cloud →

النشر7 دقيقة قراءة

انشر تطبيقاتك باستخدام Caddy على خادم VPS

Caddy هو خادم ويب ووكيل عكسي مكتوب بلغة Go وسِمته المميزة هي HTTPS التلقائي: فهو يحصل على شهادات TLS الخاصة بك ويجدّدها دون أي تهيئة. على خادم VPS، يستبدل ملف Caddyfile من ثلاثة أسطر عشرات الأسطر من Nginx زائدًا Certbot، ما يجعله الخيار الأسرع لعرض تطبيق عبر HTTPS.

لماذا تختار Caddy كواجهة على خادم VPS الخاص بك؟

التعقيد التاريخي للوكيل العكسي يكمن في TLS: توليد شهادة، وتهيئة التجديد، وإدارة إعادة التوجيه من HTTP إلى HTTPS. يزيل Caddy كل ذلك. بمجرد أن تحدّد اسم نطاق في ملف Caddyfile، يتصل بـ Let's Encrypt (أو ZeroSSL كحل بديل)، ويهيّئ الشهادة، ويثبّتها (OCSP stapling)، ويجدّدها في الخلفية. التهيئة مقروءة وقصيرة، وقابلة لإعادة التحميل أثناء التشغيل دون انقطاع الخدمة.

نقاط قوة Caddy في الإنتاج

  • HTTPS تلقائي من طرف إلى طرف: الإصدار والتجديد وإعادة التوجيه دون تدخّل
  • ملف Caddyfile بسيط: كتلة من بضعة أسطر لكل موقع، أقصر بكثير من تهيئة Nginx
  • وكيل عكسي مدمج مع فحوصات السلامة وموازنة الأحمال نحو حاوياتك أو منافذك المحلية
  • HTTP/2 وHTTP/3 (QUIC) مفعَّلان افتراضيًا
  • إعادة تحميل التهيئة أثناء التشغيل (caddy reload) دون قطع الاتصالات
  • واجهة برمجة تطبيقات إدارية بصيغة JSON لقيادة التهيئة ديناميكيًا

المتطلبات

Caddy مقتصد: معالج vCPU واحد و512 ميغابايت إلى 1 غيغابايت من RAM تكفي لتقديم عدة مواقع كوكيل عكسي. لديك الخيار بين تثبيته كملف تنفيذي للنظام (خدمة systemd) على Ubuntu/Debian، أو تشغيله في حاوية Docker. في كلتا الحالتين، تحتاج إلى نطاق يشير إلى عنوان IP الخاص بخادم VPS والمنافذ 80 و443 (و443/UDP لـ HTTP/3) مفتوحة في جدار الحماية.

انشر Caddy كوكيل عكسي

01

ثبّت Caddy

على Ubuntu/Debian، أضِف المستودع الرسمي ثم apt install caddy. يسجّل Caddy نفسه كخدمة systemd نشطة عند بدء التشغيل. تحقق: systemctl status caddy. في وضع الحاوية، انطلق من الصورة caddy:latest واربط حجمًا (volume) على /data للحفاظ على الشهادات.

02

وجّه DNS وافتح المنافذ

أنشئ سجل A app.yourdomain.com نحو عنوان IP الخاص بخادم VPS. افتح المنافذ اللازمة: ufw allow 80 وufw allow 443 وufw allow 443/udp لـ HTTP/3. المنفذ 80 لا غنى عنه لتحدي HTTP الخاص بـ Let's Encrypt.

03

اكتب ملف Caddyfile

حرّر /etc/caddy/Caddyfile. لعرض تطبيق يعمل محليًا على المنفذ 3000: app.yourdomain.com { reverse_proxy localhost:3000 }. هذا كل شيء: يستنتج Caddy أن HTTPS مطلوب لأنك حددت نطاقًا، ويُطلق إصدار الشهادة.

04

أعِد التحميل وتحقق

طبّق التهيئة دون توقف: caddy reload --config /etc/caddy/Caddyfile. تابع الحصول على الشهادة في السجلّات: journalctl -u caddy -f. عند أول اتصال HTTPS بنطاقك، تكون الشهادة جاهزة.

05

أضِف ترويسات الأمان والضغط

أثرِ الكتلة بموجِّه header لـ HSTS وترويسات مكافحة الاختطاف بالنقر (anti-clickjacking)، وفعّل encode gzip zstd للضغط. بما أن التهيئة تصريحية، تبقى هذه الإضافات مقروءة ويطبّقها أمر caddy reload بسيط.

لاستضافة عدة تطبيقات على خادم VPS نفسه، اكتفِ بإدراج عدة كتل مواقع في ملف Caddyfile نفسه، لكلٍ منها reverse_proxy خاصة به. وللتطوير المحلي دون نطاق عام، استبدل اسم النطاق بـ :80 أو استخدم الموجِّه tls internal: عندئذٍ يولّد Caddy سلطة تصديق (CA) محلية ويوقّع الشهادة بنفسه، وهو أمر عملي لبيئة ما قبل الإنتاج الداخلية.

الوثائق الرسمية

للتهيئة المتقدمة والخيارات الخاصة بالأداة، ارجع إلى وثائق Caddy الرسمية. يغطي هذا الدليل النشر على خادم VPS؛ وتبقى وثائق الناشر المرجع للإعدادات الدقيقة والتحديثات الكبرى وحالات الاستخدام المحددة.

ضع Caddy في واجهة تطبيقاتك على خادم VPS Cloud

انشر خادم VPS Cloud من ServOrbit مع قالب النشر: يتولى Caddy HTTPS التلقائي بينما تركّز أنت على تطبيقك.

بحاجة إلى مساعدة؟

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