Letöltések folytatása Squiden keresztül
Folytatás előtt ellenőrizd a Range-válaszokat és az objektum azonosságát. Válaszd el a Squid előzetes letöltését az alapvető Range-támogatástól.
Csak akkor folytasd a letöltést, ha a download.part ugyanahhoz az objektumreprezentációhoz tartozik, amelyet most kérsz. A fájlnév önmagában nem igazolja ezt: a forrás az első próbálkozás óta megváltoztathatta a tartalmat.
curl --proxy http://proxy.example:3128 --noproxy '' --connect-timeout 5 --max-time 60 -C - --output download.part http://files.example/test.binCseréld le mindkét végpontot olyan szolgáltatásra, amelyet jogosult vagy használni. Nyilvános fájl összehasonlításához, ahol nyilvános proxy engedélyezett, válassz HTTP-végpontot a HTTP-proxylistából. A -C - a meglévő fájl méretét használja folytatási pontként. Vizsgáld meg a cél válaszát, ne tekints minden visszakapott törzset hiányzó bájtnak:
| Válasz | Értelmezés |
|---|---|
| 206 Content-Range fejléccel | Ellenőrizd, hogy a kapott tartomány a várt folytatás-e. |
| 200 | A szerver figyelmen kívül hagyhatta a Range-et, és a teljes reprezentációt küldhette. |
| 416 | A kért tartomány nem teljesíthető; ne fűzd hozzá a hibaoldalt a fájlhoz. |
A validátorok és a If-Range segíthetnek elkerülni egy változó erőforrás eltérő verzióinak összeillesztését. A kész fájl megbízhatónak tekintése előtt kövesd az alkalmazás reprezentációs szabályait.
A Squid 6.13 range_offset_limit beállítása azt szabályozza, mikor tölt le az elejétől egy objektumot gyorsítótárazáshoz, nem azt, kérhet-e tartományt a kliens:
range_offset_limit 0A nulla limit elkerüli az elejének felesleges letöltését csak a gyorsítótár feltöltéséért. Hasznos tartomány továbbítása az objektum gyorsítótárazása nélkül is sikeres lehet. Normál HTTPS CONNECT esetén a Range-adatcsere a cél TLS-én belül történik; ezt a választ olvasd, ne kezeld a Squid látható objektumgyorsítótár-szabályát a belső kérés vezérléseként.