ووردبريس

الوصول إلى خادم FastAPI على EC2 Ubuntu 24.04 باستخدام HTTPS

عند تطوير تطبيقات الويب، قد تواجه بعض التحديات اللوجستية، وخاصة عند دمج خلفيات قابلة للتفاعل عبر بروتوكولات مختلفة. هذا ما يواجهه الكثيرون عند محاولة الوصول إلى واجهات برمجة التطبيقات (APIs) المُبنية باستخدام FastAPI على خوادم مستضافة باستخدام AWS EC2، خاصة عند التعامل مع بروتوكولات HTTP وHTTPS. في هذا المقال، سنستعرض كيفية الوصول إلى خلفية FastAPI على خادم Ubuntu 24.04 مستضاف على AWS EC2 عبر بروتوكول HTTPS.

لماذا تستخدم FastAPI على AWS EC2؟

FastAPI هو إطار عمل حديث لتطوير واجهات برمجة التطبيقات في Python، ويتميز بسرعة الأداء وسهولة الاستخدام. عند استخدامه على خادم Amazon EC2، يمنحك القدرة على استضافة تطبيقاتك بشكل مرن وآمن. لكن، قد تظهر بعض العقبات مثل تلك التي تصادفها عند محاولة دمج تطبيقاتك مع مواقع WordPress.

التحدي: الوصول إلى الخلفية عبر بروتوكول HTTPS

عند تشغيل تطبيق FastAPI عبر الأمر uvicorn app:app --host 0.0.0.0 --port 8000، يتم استضافته على المنفذ 8000. ومع ذلك، تظهر المشكلة عندما تحاول الوصول إلى هذا التطبيق من موقع WordPress الذي غالباً ما يعمل عبر بروتوكول HTTP. هذه الفجوة في البروتوكولات قد تؤدي إلى منع الوصول. الحل الأمثل لذلك هو استخدام بروتوكول HTTPS.

إعداد Nginx كخادم وسيط

إحدى الحلول الشائعة لتحقيق هذا هو استخدام Nginx كخادم وسطي Reverse Proxy لتوجيه الطلبات من HTTP إلى HTTPS. في حالة عدم نجاح تثبيت Nginx كما حدث في المثال الذي تمت الإشارة إليه، يمكنك اتباع الخطوات التالية:

  1. تثبيت Nginx: تأكد من تحديث حزمة النظام لديك باستخدام الأمر:

    sudo apt update
    sudo apt install nginx
  2. تكوين Nginx: بعد نجاح التثبيت، يجب عليك إعداد ملف التكوين لـ Nginx لتوجيه الطلبات. يمكنك إنشاء ملف جديد في /etc/nginx/sites-available/default وإضافة الإعدادات اللازمة لتوجيه الطلبات إلى FastAPI.

  3. التحقق من الحالة: بعد التكوين، تحقق من حالة Nginx باستخدام الأوامر المذكورة للحصول على تفاصيل حول أي أخطاء قد تحدث:
    sudo systemctl status nginx.service
    journalctl -xeu nginx.service

التحويل إلى HTTPS

لتحقيق الاتصال الآمن، ينبغي لك الحصول على شهادة SSL. يمكنك استخدام أدوات مثل Certbot للحصول على شهادات مجانية من Let’s Encrypt. يمكنك اتباع الخطوات التالية:

  1. تثبيت Certbot:

    sudo apt install certbot python3-certbot-nginx
  2. الحصول على الشهادة:

    sudo certbot --nginx
  3. تجديد الشهادات تلقائيًا: تأكد من ضبط الآلية لتجديد الشهادات تلقائياً لكي لا تتوقف الخدمة.

التكامل مع WordPress

بعد الانتهاء من إعداد Nginx والتأكد من أن لديك شهادة SSL صالحة، يجب أن يكون بالإمكان الوصول إلى واجهة برمجة التطبيقات لجهاز FastAPI من موقع WordPress. إذا كان لديك كود مضمن باستخدام HTML وCSS وJavaScript، تأكد من استخدام HTTPS عند استدعاء واجهة برمجة التطبيقات.

نقاط يجب مراعاتها

  • تأكد من أن عنوان URL الخاص بالخلفية يتم توجيهه بشكل صحيح.
  • تحقق من جدار الحماية لديك في AWS EC2 للسماح بحركة المرور على المنفذ 443 (HTTPS).

الخاتمة

باستخدام الطرق المذكورة أعلاه، يمكنك الوصول إلى خلفية FastAPI على خادم Ubuntu 24.04 الخاص بك على AWS EC2 باستخدام بروتوكول HTTPS. تكامل الخدمات المختلفة يعتبر أحد المفاتيح لنجاح تطبيقات الويب. تأكد من اتخاذ كافة التدابير اللازمة لحماية تطبيقك وضمان عمله بسلاسة. إذا كنت بحاجة إلى دعم إضافي، لا تتردد في البحث في المصادر والمجتمعات التقنية التي يمكن أن توفر لك العون والمساعدة.

احمد علي

متخصص في مجال تطوير وإدارة المواقع الإلكترونية، يتمتع بخبرة واسعة في التعامل مع منصات إدارة المحتوى، خاصة ووردبريس. يقدم أحمد حلولاً مبتكرة واستراتيجيات فعالة لتحسين أداء المواقع وتطوير تصميماتها بما يتناسب مع احتياجات المستخدمين. كما يتميز بقدرته على تبسيط المفاهيم التقنية وكتابة محتوى تعليمي يساعد الأفراد والشركات على تحسين تواجدهم الرقمي وتحقيق أهدافهم على الإنترنت.
زر الذهاب إلى الأعلى
Don`t copy text!