გაგრძელება მხოლოდ მაშინ გამოიყენეთ, თუ 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-ის ხილული ობიექტების ქეშის პოლიტიკა შიდა მოთხოვნის კონტროლად არ ჩათვალოთ.

დაკავშირებული სტატიები