Жоқ. Клиент үлкен файлды шағын буферлерде оқып, оны белгілі Content-Length-пен жібере алады. Шектеулі оқулар жад шығынын басқарады; HTTP фреймдеуі алушыға сұраныс денесінің қайда аяқталатынын айтады.

HTTP кітапханасы байт ұзындығын білетін тұрақты файл белгісіз көлемде дерек шығаратын генератордан өзгеше. Екі дереккөз үшін де кітапхана қолдайтын дене интерфейсін пайдаланыңыз. Тек ұзындық беру үшін бүкіл файлды жолға жинаудың қажеті жоқ.

HTTP/1.1 үшін протокол ережелеріне сәйкес нақты жіберілген фреймдеуді тексеріңіз: Content-Length немесе chunked тасымалдау кодтауы. Chunked кодтау файл мазмұнынан тыс өлшем белгілерін қосады. Қайшы келетін фреймдеу өрістерін біріктірмеңіз және проксиді жүктеуді қабылдауға көндіру үшін ұзындықты болжамаңыз.

Прокси арқылы жүктеу сәтсіз болса, HTTP нұсқасын, дене көзін және бірінші бас тартуды жазыңыз. 411 жауабы дененің ортасында жабылатын байланыстан өзгеше тексеруді ұсынады. Егер оның орнына аутентификацияны қайталау әрекеттері сәтсіз болса, жүктеу денесін қайта ойнатуға бола ма соны тексеріңіз. Қолданбаның оқу буферінің өлшемін өзгерту сұраныс фреймдеуін дәл сол күйінде қалдыруы мүмкін.

Бұл байқау үшін маршрут маңызды. Ашық мәтінмен жіберу жүктеудің HTTP фреймдеуін проксиге ашады; кәдімгі ұштастан-ұшқа HTTPS оны туннель ішіне салады. HTTP/2 өз фреймдеуін пайдаланады. Сондықтан Squid-тің тарихи шектеулері белгілі ескі сәтсіздіктерді түсіндіреді, ал қазіргі әрбір прокси ағынды жүктеулерді қабылдамайды деген ереже емес.

Қатысты мақалалар