Ta opp att nedlastingar gjennom Squid
Kontroller Range-svar og objektidentitet før du tek opp att ein fil, og skil førehandshentinga i Squid frå grunnleggjande Range-støtte.
Bruk framhald berre når download.part høyrer til same objektrepresentasjon som du skal be om no. Eit filnamn åleine slår ikkje fast det: opphavet kan ha endra innhaldet sidan første forsøk.
curl --proxy http://proxy.example:3128 --noproxy '' --connect-timeout 5 --max-time 60 -C - --output download.part http://files.example/test.binByt ut begge endepunkta med tenester du har lov til å bruke. For ei offentleg filsamanlikning der offentlege proxyar er tillatne, vel eit HTTP-endepunkt frå lista over HTTP-proxyar. -C - brukar storleiken på den eksisterande fila som framhaldspunkt. Undersøk svaret frå målet i staden for å rekne ein vilkårleg svarkropp som dei manglande byta:
| Svar | Tolking |
|---|---|
| 206 med Content-Range | Kontroller at det returnerte området er det venta framhaldet. |
| 200 | Tenaren kan ha ignorert Range og sendt heile representasjonen. |
| 416 | Det førespurde området kan ikkje oppfyllast; ikkje legg feilsida til fila. |
Validatorar og If-Range kan hjelpe til med å unngå å setje saman ulike versjonar av ein ressurs som endrar seg. Følg representasjonsreglane til programmet før du stolar på den ferdige fila.
I Squid 6.13 styrer range_offset_limit når eit objekt vert henta frå starten for mellomlagring, ikkje om ein klient kan be om eit område:
range_offset_limit 0Ei nullgrense unngår ekstra henting av starten berre for å fylle mellomlageret. Å vidaresende eit nyttig område utan å mellomlagre objektet kan framleis lukkast. Ved vanleg HTTPS-CONNECT ligg Range-utvekslinga inne i TLS til målet; les det svaret i staden for å sjå den synlege objektlagerpolicyen i Squid som kontroll over den indre førespurnaden.