Flask Tutorials

अपने Flask ऐप को 0.0.0.0 पर चलाएँ

Spread the love

Flask वेब एप्लीकेशन बनाने के लिए एक लोकप्रिय पायथन माइक्रोफ्रेमवर्क है। कभी-कभी, आपको अपनी Flask ऐप को आपके स्थानीय मशीन से ही नहीं, बल्कि आपके नेटवर्क पर किसी भी डिवाइस से सुलभ बनाने की आवश्यकता होती है। इसके लिए app.run() में host पैरामीटर को '0.0.0.0' पर सेट करना आवश्यक है। यह लेख बताता है कि आपके Flask डेवलपमेंट सर्वर को नेटवर्क एक्सेसिबिलिटी के लिए कैसे कॉन्फ़िगर करें।

विषय सूची

app.run() फ़ंक्शन

app.run() फ़ंक्शन Flask डेवलपमेंट सर्वर शुरू करता है। यह इसके व्यवहार को अनुकूलित करने के लिए कई वैकल्पिक तर्क स्वीकार करता है। प्रमुख तर्क host, port और debug शामिल हैं।


from flask import Flask

app = Flask(__name__)

@app.route("/")
def hello_world():
    return "

Hello, World!

" if __name__ == "__main__": app.run() # डिफ़ॉल्ट रूप से host='127.0.0.1', port=5000

यह पोर्ट 5000 का उपयोग करके localhost (127.0.0.1) पर सर्वर शुरू करता है। इसे अन्य उपकरणों से सुलभ बनाने के लिए, हम host पैरामीटर को समायोजित करेंगे।

होस्ट पैरामीटर को कॉन्फ़िगर करना

host पैरामीटर उस नेटवर्क इंटरफ़ेस को निर्दिष्ट करता है जिस पर सर्वर सुनता है। इसे '0.0.0.0' पर सेट करने से सर्वर को सभी उपलब्ध इंटरफेस पर सुनने का निर्देश मिलता है, जिससे आपका एप्लिकेशन उसी नेटवर्क पर किसी भी डिवाइस से सुलभ हो जाता है।


if __name__ == "__main__":
    app.run(host='0.0.0.0')

पोर्ट पैरामीटर का उपयोग करना

port पैरामीटर पोर्ट नंबर निर्दिष्ट करता है। डिफ़ॉल्ट 5000 है। यदि यह पोर्ट पहले से ही उपयोग में है, तो आपको एक विकल्प चुनना होगा।


if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8080)

डिबग मोड

debug पैरामीटर कोड परिवर्तन पर स्वचालित पुनः लोडिंग और एक इंटरैक्टिव डिबगर जैसी डिबगिंग सुविधाओं को सक्षम करता है। यह विकास के दौरान बेहद उपयोगी है लेकिन उत्पादन में एक महत्वपूर्ण सुरक्षा जोखिम पैदा करता है। उत्पादन वातावरण में कभी भी debug=True का उपयोग न करें।


if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8080, debug=True)

सब कुछ एक साथ जोड़ना

सभी पैरामीटरों को मिलाकर आपके डेवलपमेंट सर्वर पर पूर्ण नियंत्रण मिलता है।


if __name__ == "__main__":
    app.run(host='0.0.0.0', port=8081, debug=True) 

प्रोडक्शन परिनियोजन

app.run() विधि केवल विकास के लिए अभिप्रेत है। उत्पादन के लिए, बेहतर प्रदर्शन, सुरक्षा और विश्वसनीयता के लिए systemd या supervisord जैसे प्रक्रिया प्रबंधक के साथ Gunicorn या uWSGI जैसे उत्पादन-तैयार WSGI सर्वर का उपयोग करें।

प्रातिक्रिया दे

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *