Pagsisiyasat sa ERR_INVALID_CHUNKED_ENCODING sa pamamagitan ng proxy
Hanapin kung saan nagiging kulang o sirang ang tugon sa pamamagitan ng paghahambing ng framing, hintuan at mga log ng ruta ng proxy.
ERR_INVALID_CHUNKED_ENCODING ay nangangahulugang hindi na-decode ang tugon bilang kumpletong chunked na mensahe. Ang pagdating ng ilang nilalaman nang matagumpay ay hindi nagpapatunay na wasto ang natitirang bahagi ng tugon.
- Itago ang mga header ng tugon at ang unang error ng decoder. Tukuyin kung aling bahagi ang nag-ulat nito at kung ang mensahe ay idineklarang chunked.
- Hanapin ang hintuan. Ang chunked coding ng HTTP/1.1 ay nangangailangan ng mga sukat, kaukulang datos, mga pantanggal at panghuling bloke, kasama ang trailers kung naaangkop. Ang maagang pagsasara ng koneksyon at maling sukat ay magkaibang bakas.
- Ihambing ang parehong kontroladong kahilingan sa nilalayong ruta. Itugma ang kahilingan sa mga log ng proxy at ng upstream. Maghanap ng pagsasara mula sa upstream, pagbabago ng tagapamagitan o pagkansela ng aplikasyon sa puntong iyon.
Huwag maghinuha ng HTTP framing mula sa laki ng TCP buffer. Ang isang pagbasa ng socket ay maaaring maglaman ng kalahating bloke o ilang bloke; maaaring ilantad ng aklatan ang na-decode na nilalaman sa iba't ibang buffer. Ang isang JSON record ay may ibang hangganan. Maaaring muling i-frame ng proxy ang tugon nang hindi pinapanatili ang orihinal na hangganan ng packet.
Kung ang ebidensya ay tumutukoy sa lumang implementasyon ng Squid, itago ang numero ng release nito kasama ng konklusyong iyon. Ang payo sa patch ng Squid 2.x ay hindi naglalarawan sa bawat kasalukuyang release. Panatilihin ang normal na pag-decode at pagpapatunay ng sertipiko habang naghahambing: ang pagpigil sa error ay maaaring mag-iwan ng kulang na file na mukhang matagumpay na download.