2011-10-06 12 views
12

मैं नए हेरोोक सीडर स्टैक पर जीजेआईपी संपीड़न कैसे सक्षम करूं? यह उनकी site से सीधे है:हेरोकू सीडर (पायथन/फ्लास्क/गनिकॉर्न) पर gzip संपीड़न को कैसे सक्षम करें

के बाद से देवदार एप्लिकेशन को अनुरोध आवेदन सर्वर से सीधे बना रहे हैं - किसी भी प्रतिसाद संपीड़न आपके आवेदन भीतर किया जाना चाहिए - nginx की तरह एक HTTP सर्वर के माध्यम से प्रॉक्सी नहीं। रैक ऐप्स के लिए, इसे रैक :: डिफ्लेटर मिडलवेयर के साथ पूरा किया जा सकता है। Gzipped स्थैतिक संपत्तियों के लिए, सुनिश्चित करें कि Rack :: Deflater ActionDispatch :: आपके मिडलवेयर स्टैक में स्टेटिक से पहले लोड किया गया है।

यदि मैं इसे सही तरीके से पढ़ रहा हूं, तो मेरा पायथन एप्लिकेशन कोड अब प्रतिक्रियाओं को gzipping के लिए ज़िम्मेदार है? मैं अपनी स्थिर संपत्तियों को संपीड़ित करने के बारे में कैसे जाउंगा (उदा। सीएसएस/जेएस)? मैं फ्लास्क और गिनीकॉर्न का उपयोग कर रहा हूं।

+1

शायद यह सही नहीं लगता लेकिन निश्चित रूप से वे आपको बता रहे हैं। Python.org पर आपके पास gzip उपयोग के बारे में प्रलेखन है: http://docs.python.org/library/gzip.html – gforcada

+0

सिर्फ शैतानों को खेलना वकील - आपको gzip का उपयोग करने की आवश्यकता क्यों है? आप हेरोकू में बैंडविड्थ के अंदर/बाहर भुगतान नहीं कर रहे हैं तो संपीड़न की आवश्यकता क्यों है? –

+8

मुझे संपीड़ित करने की आवश्यकता है क्योंकि मेरे उपयोगकर्ता एक पृष्ठ को लोड करना पसंद करेंगे जो 1 एमबी के बजाय 300 केबी वजन का होता है! –

उत्तर

6

आपको केवल एक wsgi midware की आवश्यकता है जो प्रतिक्रिया को gzips। Gzipping all HTTP traffic with Pyramid या http://librelist.com/browser//flask/2010/6/14/gzip-compression/

+0

मैं ऊपर वर्णित अनुसार पिरामिड का उपयोग नहीं कर रहा हूं। और वह फ्लास्क लिंक एक पूर्ण कार्यान्वयन नहीं है। –

+1

पिरामिड और फ्लास्क दोनों wsgi आधारित हैं। आपको wsgi midware की आवश्यकता है, फ्लास्क विशिष्ट मिडलवेयर नहीं। –

+1

यहां एक और http://code.google.com/p/ibkon-wsgi-gzip-middleware/source/browse/trunk/gzip_middleware.py और दूसरा है http://www.evanfosmark.com/2008/12/python- wsgi-middleware-for-automatic-gzipping/फिर, यह wsgi midware है फ्लास्क, बंदूक या पिरामिड नहीं। –

0

देखें WSGI spec के अनुसार, प्रकाशित 2003, क्षुधा प्रतिक्रियाओं gzip नहीं करना चाहिए लेकिन सर्वर के लिए छोड़ कि (अपाचे माना, एप्लिकेशन सीजीआई-stylee चल)।

एप्लिकेशन और मिडलवेयर को अपने आउटपुट में किसी प्रकार का ट्रांसफर-एन्कोडिंग लागू नहीं करना चाहिए, जैसे कि चंकिंग या जीज़िंग; "हॉप-बाय-हॉप" ऑपरेशंस के रूप में, ये एन्कोडिंग वास्तविक वेब सर्वर/गेटवे का प्रांत हैं।

लेकिन आज 2013 में, अक्सर ऐप सर्वर सर्वर है। डब्लूएसजीआई ने इसकी उम्मीद नहीं की थी। यही कारण है कि यह भी मतलब है कि, यहां 2009 में, अजगर वेब विकास दुनिया अभी भी है नहीं काफी 1997 की एप्लीकेशन प्रोग्रामिंग मॉडल पर सुधार करने के लिए सक्षम किया गया सीजीआई के साथ संगतता पर http://www.b-list.org/weblog/2009/aug/10/wsgi/

WSGI के उत्सुक आग्रह के अनुसार एक समस्या है,।

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