تطبيقات الويب المطورة بلغة بايثون ليست مثل PHP، حيث يمكن الوصول إليها مباشرة عن طريق وضعها في دليل، ومن الضروري تكوين خدمة الويب في بيئة بايثون، ومن ثم من أجل توحيد استخدام أسماء النطاقات والمنافذ، يمكنك استخدام nginx لتكوينه لتوفير الوصول إلى الخدمات الخارجية:

تكوين nginx هو كما يلي:

    location / {
        include                uwsgi_params;
        uwsgi_send_timeout     600;
        uwsgi_connect_timeout  600;
        uwsgi_read_timeout     600;
        uwsgi_pass             127.0.0.1:81;
    }

تُستخدم الأسطر الثلاثة الموجودة في المنتصف بشكل أساسي لضبط المهلة، ومن أجل التعاون مع بعض حسابات بايثون المعقدة، إذا كان وقت التشغيل قصيرًا جدًا، فلن تحتاج إلى إضافته؛

يمكن ملء السطر الأخير من المنفذ وفقًا للحالة، والتعاون مع uwsgi أدناه؛

تثبيت بايثون uwsgi:

pip3 install uwsgi

قم بإنشاء ملف تكوين جديد uwsgi.ini

[uwsgi]
socket=127.0.0.1:81
plugins = python3
wsgi-file=app.py 
master=true
processes=4
threads=2
stats=127.0.0.1:82
callable=app

وهي عبارة عن منافذ وبرامج وأسماء ملفات وعدد العمليات وعناوين المراقبة وما إلى ذلك؛

السطر الأخير هو تكوين إطار عمل Flask، وإلا فلن تحتاج إلى هذا السطر؛

قم بإنشاء ملف برنامج جديد app.py

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return [b"Hello World"]

افتح شاشة أسفل الصدفة، وقم بتشغيل uwsgi uwsgi.ini، ويصل المتصفح إلى اسم المجال الذي تم تكوينه بواسطة nginx، ويعرض Hello World بشكل طبيعي؛

إذا كنت تستخدم إطار عمل Flask، فقم بتعديل ملف app.py وفقًا لمعايير Flask.

المرجع: https://www.runoob.com/python3/python-uwsgi.html






اترك رد