Squid аркылуу жүктөөнү улантуу
Улантуудан мурда Range жоопторун жана объекттин бирдейлигин текшерип, Squid алдын ала алуу саясатын негизги Range колдоосунан айырмалаңыз.
download.part азыр сурай турган объекттин ошол эле көрсөтүлүшүнө тиешелүү болгондо гана улантыңыз. Файл аты эле муну ырастабайт: баштапкы сервер биринчи аракеттен бери мазмунду өзгөрткөн болушу мүмкүн.
curl --proxy http://proxy.example:3128 --noproxy '' --connect-timeout 5 --max-time 60 -C - --output download.part http://files.example/test.binЭки туташуу чекитин тең колдонууга укугуңуз бар кызматтарга алмаштырыңыз. Коомдук прокси уруксаттуу ачык файл салыштыруусу үчүн HTTP прокси тизмесинен HTTP чекит тандаңыз. -C - бар файлдын өлчөмүн улантуу жери катары колдонот. Кайтып келген ар кандай денени жетишпеген байттар деп санабай, максаттын жообун караңыз:
| Жооп | Түшүндүрмө |
|---|---|
| Content-Range менен 206 | Кайткан диапазон күтүлгөн уланды экенин текшериңиз. |
| 200 | Сервер Rangeти эске албай, толук көрсөтүлүштү жөнөткөн болушу мүмкүн. |
| 416 | Суралган диапазон аткарылбайт; ката барагын файлга кошпоңуз. |
Валидаторлор жана If-Range өзгөргөн ресурстун ар башка версияларын бириктирбөөгө жардам берет. Даяр файлга ишенүүдөн мурда колдонмонун көрсөтүлүш эрежелерин сактаңыз.
Squid 6.13төгү range_offset_limit кардар диапазон сурай алабы дегенди эмес, кэш үчүн объект качан башынан алынарын башкарат:
range_offset_limit 0Нөл чеги кэшти толтуруу үчүн гана баштапкы бөлүктү ашыкча алуудан сактайт. Объектти кэштебей пайдалуу диапазонду өткөрүү да ийгиликтүү болушу мүмкүн. Кадимки HTTPS CONNECTте Range алмашуусу максаттын TLSинин ичинде; Squidдин көрүнгөн объект кэш саясатын ички суроо башкаруусу деп санабай, ошол жоопту окуңуз.