Ներբեռնումները շարունակել 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 --ը գոյություն ունեցող ֆայլի չափն օգտագործում է որպես շարունակման կետ։ Ստուգեք նպատակակետի պատասխանը՝ ցանկացած ստացված մարմինը պակասող բայթեր համարելու փոխարեն․
| Պատասխան | Մեկնաբանություն |
|---|---|
| 206՝ Content-Range-ով | Ստուգեք, որ ստացված միջակայքը սպասվող շարունակությունն է։ |
| 200 | Սերվերը կարող էր անտեսել Range-ը և ուղարկել ամբողջ ներկայացումը։ |
| 416 | Պահանջված միջակայքը հնարավոր չէ բավարարել․ սխալի էջը մի կցեք ֆայլին։ |
Վավերացնողները և If-Range-ը կարող են օգնել չմիացնել փոփոխվող ռեսուրսի տարբեր տարբերակները։ Նախքան պատրաստ ֆայլին վստահելը հետևեք հավելվածի ներկայացման կանոններին։
Squid 6.13-ի range_offset_limit-ը կառավարում է, թե երբ է օբյեկտը սկզբից բեռնվում քեշավորման համար, ոչ թե արդյոք հաճախորդը կարող է միջակայք խնդրել․
range_offset_limit 0Զրոյական սահմանը խուսափում է լրացուցիչ սկզբնամաս ստանալուց միայն քեշը լցնելու համար։ Օգտակար միջակայք փոխանցելը՝ առանց օբյեկտը քեշավորելու, դեռ կարող է հաջող լինել։ Սովորական HTTPS CONNECT-ի դեպքում Range փոխանակումը նպատակակետի TLS-ի ներսում է․ կարդացեք այդ պատասխանը՝ Squid-ի տեսանելի օբյեկտային քեշի քաղաքականությունը ներքին հարցման վերահսկում համարելու փոխարեն։