Usa a continuación só se download.part pertence á mesma representación do obxecto que vas solicitar agora. O nome do ficheiro non o demostra: a orixe pode ter cambiado o contido desde o primeiro intento.

curl --proxy http://proxy.example:3128 --noproxy '' --connect-timeout 5 --max-time 60 -C - --output download.part http://files.example/test.bin

Substitúe ambos os puntos de conexión por servizos que teñas permiso para usar. Para comparar un ficheiro público onde se permitan proxys públicos, colle un punto HTTP da lista de proxys HTTP. -C - usa o tamaño do ficheiro existente como punto de continuación. Inspecciona a resposta do destino en vez de considerar calquera corpo recibido como os bytes que faltan:

RespostaInterpretación
206 con Content-RangeComproba que o rango devolto sexa a continuación esperada.
200O servidor pode ter ignorado Range e enviado a representación completa.
416O rango solicitado non se pode satisfacer; non engadas a páxina de erro ao ficheiro.

Os validadores e If-Range poden axudar a evitar unir versións dun recurso cambiante. Segue as regras de representación da aplicación antes de confiar no ficheiro completado.

En Squid 6.13, range_offset_limit controla cando se obtén un obxecto desde o principio para gardalo na caché, non se o cliente pode pedir un rango:

range_offset_limit 0

Un límite cero evita obter un prefixo adicional só para encher a caché. Reenviar un rango útil sen gardar o obxecto na caché pode seguir sendo correcto. En CONNECT HTTPS normal, o intercambio Range está dentro do TLS do destino; le esa resposta en vez de tratar a política visible da caché de obxectos de Squid como control da petición interna.

Artigos relacionados