दुर्भाग्य से, मैं cnst की पोस्ट पर टिप्पणी नहीं कर सकता - इसलिए मैं यहां जवाब देने जा रहा हूं।
nginx_http_proxyHTTP / 1.0 में नदी के ऊपर के साथ डिफ़ॉल्ट वार्ता से मॉड्यूल। इसे निर्देश के साथ बदला जा सकता है proxy_http_version 1.1।
यह आपकी स्क्रिप्ट के HTTP / 1.0 उत्तर को वापस करने का कारण भी हो सकता है, हालाँकि 307इस संस्करण में chunked कोडिंग और स्थिति कोड मौजूद नहीं है।
आपको किसी अनुप्रेषित कोडिंग के साथ किसी भी तरह से चिपके हुए कोडिंग का उपयोग नहीं करना चाहिए , क्योंकि यह वास्तव में समझ में नहीं आता है।
इसके अतिरिक्त , ऐसा लगता है कि नग्नेक्स ऊपर की ओर से क्लाइंट को एक-एक करके चोक नहीं करता है , लेकिन यह अपस्ट्रीम की प्रतिक्रिया को बफ़र करता है । Content-Lengthशीर्ष लेख क्षेत्र पर ध्यान नहीं दिया, क्योंकि यह परिभाषा के खिलाफ है। मुझे मॉड्यूल के स्रोत कोड को देखना था क्योंकि यह सब अनैजंटेड प्रतीत होता है।
आप nginx_tcp_proxy_moduleकच्चे टीसीपी डेटा के रूप में chunked सामग्री को प्रॉक्सी करने की कोशिश करना चाह सकते हैं : Github पर मॉड्यूल
अद्यतन (10.04.14) मॉड्यूल के लिए समर्थन हासिल है
हेडर , जिनमें से एक ( ) नियंत्रण प्रतिक्रिया या बफ़र जाना चाहिए कि क्या नहीं।
nginx_http_proxyX-Accel-* X-Accel-Buffering: yes|no
इस हेडर ( X-Accel-Buffering: no) को बैकएंड की प्रतिक्रिया में जोड़ने से क्लाइंट को सीधे पास करने के लिए nginx का कारण होगा।
यह शीर्ष लेख प्रति-अनुरोध के आधार पर बफरिंग को नियंत्रित करने की अनुमति देता है ।
प्रतिक्रिया बफ़रिंग को सक्षम या अक्षम करने के लिए मॉड्यूल का कॉन्फ़िगरेशन निर्देश भी होता है proxy_buffering(बफ़रिंग का अर्थ यह नहीं है कि चंक्स भेजना काम करेगा)।
प्रॉक्सी बफ़रिंग (हेडर और निर्देश आधारित दोनों) यहाँ प्रलेखित है ।