पायथन वेब एप्लिकेशन की सेवा करने के लिए Gunicorn को कैसे सेटअप करें

इस लेख में, हम एक VPS को रिवर्स प्रॉक्सी के रूप में Gunicorn और Nginx के साथ पायथन वेब अनुप्रयोगों की सेवा के लिए सेटअप करेंगे। हम Nginx को Gunicorn पर DoS के हमलों को रोकने के लिए सीधे Gunicorn के साथ सेवा करने के बजाय एक रिवर्स प्रॉक्सी के रूप में उपयोग करते हैं। Nginx का उपयोग करने से बेहतर प्रदर्शन (प्रॉक्सी बफ़रिंग के साथ) होता है, और अधिक अनुरोधों का परिणाम होता है।

शुरू करना

यह ट्यूटोरियल मानता है कि आपके पास पहले से ही Ubuntu 14.04 या नया स्थापित, अद्यतन और सुरक्षित वीएम है।

  • हमारा Nginx उदाहरण HTTP पोर्ट 80 पर चलेगा (लेकिन आप आसानी से HTTPS में अपग्रेड कर सकते हैं)।
  • हमारा उदाहरण पायथन ऐप पोर्ट 8080 पर सुनेगा। यह पोर्ट रिमोट एक्सेस को रोकने के लिए iptables पर बंद हो जाएगा।
  • यह ट्यूटोरियल न्यूनतम बदलाव के साथ अन्य डिस्ट्रोस पर चलना चाहिए।

स्थापित करें pip, virtualenv:

apt-get install python-pip python-virtualenv

पोर्ट 8080 बंद करें। गुनिकॉर्न केवल नेग्नेक्स द्वारा उपलब्ध होगा।

iptables -A INPUT -p tcp --destination-port 8080 -j DROP

एक नया फ़ोल्डर बनाएं और हमारे एप्लिकेशन को कॉन्फ़िगर करें। हम फ्लास्क ढांचे का उपयोग करेंगे।

mkdir /var/www-folder/
cd /var/www-folder/
virtualenv exampleapp
source exampleapp/bin/activate
cd exampleapp
pip install gunicorn
pip install flask

एप्लिकेशन फ़ाइल बनाएं।

nano myapplication.py 

निम्नलिखित को अंदर चिपकाएँ:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, Vultr!'

यह "हैलो, वल्चर!" जब कोई पृष्ठ तक पहुँचता है। अब, Gunicorn शुरू करें। xअपने वीएम के सीपीयू कोर की संख्या से 2 गुना बदलें ।

gunicorn -w x myapplication:app &

Nginx स्थापित करें और रिवर्स प्रॉक्सी को कॉन्फ़िगर करें।

deactivate
apt-get install nginx
nano /etc/nginx/sites-enabled/default

location / {लाइन के लिए खोजें और सामग्री को कोष्ठक के अंदर निम्नलिखित सामग्री से बदलें।

proxy_set_header HOST $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:8000/;

यह कॉन्फ़िगरेशन Nginx को कुछ जानकारी (HTTP प्रोटोकॉल, रिमोट आईपी एड्रेस) को Gunicorn सर्वर के वास्तविक अनुरोध के साथ अग्रेषित करने का निर्देश देता है। रीलोडेड नेग्नेक्स।

service nginx reload

इस बिंदु पर, आपका Gunicorn एप्लिकेशन ठीक से कॉन्फ़िगर किया गया है। आप वेब ब्राउज़र का उपयोग करके इसे एक्सेस कर सकते हैं http://your-vps-ip/



Leave a Comment

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

Ubuntu 16.04 पर लाइटकार्ट शॉपिंग कार्ट प्लेटफ़ॉर्म कैसे स्थापित करें

LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है

डेबियन पर सेटअप NFS शेयर

डेबियन पर सेटअप NFS शेयर

एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

मोटोमो एनालिटिक्स को फेडोरा 28 पर कैसे स्थापित करें

एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है

Linux पर एक TeamTalk Server सेटअप करें

Linux पर एक TeamTalk Server सेटअप करें

टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

विंडोज सर्वर पर Garrys मॉड कैसे स्थापित करें

परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें

एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed ​​का उपयोग करता है। क्या थी?

CentOS पर FFmpeg कैसे स्थापित करें

CentOS पर FFmpeg कैसे स्थापित करें

FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

SSH का उपयोग करके LUKS डिस्क एन्क्रिप्शन पर LVM को दूरस्थ रूप से अनलॉक करने के लिए CentOS 7 स्थापित और सेटअप करें

एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा

अपने Vultr VPS को कैसे एक्सेस करें

अपने Vultr VPS को कैसे एक्सेस करें

Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

CentOS 7 पर अक्टूबर CMS को कैसे स्थापित करें

अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ