2016-05-03 12 views
8

official doc से कहा:वर्कज़ुग वास्तव में क्या है?

WERKZEUG अजगर के लिए एक WSGI उपयोगिता पुस्तकालय है।

हालांकि, जब मैं अपने बोतल वेब अनुप्रयोग चलाने के लिए, मुझे लगता है कि सर्वर से प्रतिक्रिया हेडर में, वहाँ

HTTP/1.0 200 OK 
Content-Type: text/html; charset=utf-8 
Content-Length: 13 
Server: Werkzeug/0.11.9 Python/2.7.10 
Date: Tue, 03 May 2016 12:50:08 GMT 

से पता चला है आगे लाइन यह कहा है कि सर्वर Werkzeug है पर देखा।

इसका मतलब क्यों नहीं था WerkzeugApache जैसे वेब सर्वर है?

उत्तर

1

नहीं, यह अपाचे की तरह एक वेब सर्वर नहीं है। यह एक सीजीआई पुस्तकालय है। चूंकि APACHE (या आपका FLASK एप्लिकेशन) शायद कुछ HTTP अनुरोधों को सर्वर करने के लिए लाइब्रेरी का उपयोग कर रहा है, तो शायद यह उस हेडर को प्रतिक्रिया में जोड़ता है।

+0

वहाँ सटीक सर्वर वेब अनुप्रयोग उपयोग कर रहा है की जाँच करने के किसी भी विधि है? मैंने सोचा कि अनुरोध हेडर सर्वर को 'सर्वर:' पंक्ति में दिखाएगा। –

+0

आमतौर पर "सर्वर" शीर्षलेख पर क्या होता है सटीक है। लेकिन ध्यान रखें कि अगर कोई उस जानकारी को छिपाना चाहता है, तो वह उस हेडर को आसानी से बदल सकती है जो वह चाहती है (यदि वह वेब सर्वर चला रही है) –

+0

इस मामले में हेडर जानकारी सबसे अधिक सही है। चूंकि 'werkzeug' एक छोटे से विकास वेबसर्वर के साथ जहाज करता है - जो शायद उपरोक्त प्रतिक्रिया का उत्पादन करता है। हम केवल यह सुनिश्चित करेंगे कि ओपी कुछ हद तक विस्तार से अपना सेटअप बताता है ... – sebastian

9

क्योंकि यह नहीं है।

अपने सेटअप में अपने सबसे शायद परीक्षण के लिए "विकास सर्वर" (run_simple समारोह) का उपयोग कर। तो यह इस उपयोग-मामले में एक (बहुत) गरीब व्यक्ति के Apache की तरह है, लेकिन केवल यह समझ में है कि यह HTTP अनुरोधों का सही उत्तर देने में सक्षम है।

विकास सर्वर उत्पादन प्रणाली पर इस्तेमाल किया जा करने का इरादा नहीं है:

आप डॉक्स http://werkzeug.pocoo.org/docs/serving/ चेक करते हैं, तो आपको निम्न नोट दिखाई देगा। यह विशेष रूप से विकास के उद्देश्यों के लिए बनाया गया था और उच्च भार के तहत खराब प्रदर्शन करता है। तैनाती सेटअप के लिए एप्लिकेशन परिनियोजन पृष्ठों पर एक नज़र डालें।

5

कोई यह

WERKZEUG (WSGI पुस्तकालय) है अपने अजगर कोड और http nginx/अपाचे सर्वर

यहाँ जो संदेश वाहक की तरह है पूरा उपयोग मामला नहीं है Werkzeug WSGI:

डब्ल्यूएसजीआई के दो पक्ष हैं: "सर्वर" या "गेटवे" पक्ष (अक्सर एक वेब से rver जैसे Apache या Nginx), और "आवेदन" या "रूपरेखा" पक्ष (पायथॉन लिपि में ही) के रूप में। डब्लूएसजीआई अनुरोध को संसाधित करने के लिए, सर्वर पक्ष एप्लिकेशन निष्पादित करता है और एप्लिकेशन की ओर से पर्यावरण जानकारी और कॉलबैक फ़ंक्शन प्रदान करता है। आवेदन अनुरोध को संसाधित करता है, कॉलबैक फ़ंक्शन का उपयोग करके सर्वर पक्ष को प्रतिक्रिया वापस लौटाता है।

सर्वर और एप्लिकेशन के बीच, एक डब्लूएसजीआई मिडलवेयर हो सकता है, जो एपीआई के दोनों पक्षों को लागू करता है। सर्वर क्लाइंट और यह मिडलवेयर के लिए आगे से एक अनुरोध प्राप्त करता है। प्रसंस्करण के बाद, यह एप्लिकेशन के लिए अनुरोध भेजता है। आवेदन की प्रतिक्रिया सर्वर से और अंत में ग्राहक के लिए मिडलवेयर द्वारा भेजा जाता है। कई मध्यवर्ती हो सकते हैं जो डब्लूएसजीआई-अनुरूप अनुप्रयोगों का ढेर बनाते हैं।

आशा है कि यह मदद करता है

संबंधित मुद्दे