Chỉ tiếp tục khi download.part thuộc cùng biểu diễn đối tượng mà bạn sẽ yêu cầu lúc này. Tên tệp không đủ xác nhận: máy chủ gốc có thể đã đổi nội dung từ lần thử đầu.

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

Thay cả hai điểm kết nối bằng dịch vụ bạn được phép dùng. Để so sánh tệp công khai ở nơi cho phép proxy công khai, chọn điểm HTTP từ danh sách proxy HTTP. -C - dùng kích thước tệp hiện có làm điểm tiếp tục. Kiểm tra phản hồi đích thay vì coi mọi thân phản hồi là các byte còn thiếu:

Phản hồiDiễn giải
206 kèm Content-RangeKiểm tra phạm vi trả về có đúng phần tiếp tục mong đợi không.
200Máy chủ có thể đã bỏ qua Range và gửi biểu diễn đầy đủ.
416Không thể đáp ứng phạm vi yêu cầu; đừng nối trang lỗi vào tệp.

Bộ xác thực và If-Range có thể giúp tránh ghép các phiên bản của tài nguyên thay đổi. Theo quy tắc biểu diễn của ứng dụng trước khi tin tệp hoàn tất.

range_offset_limit của Squid 6.13 điều khiển khi nào lấy đối tượng từ đầu để lưu đệm, không quyết định máy khách có được yêu cầu phạm vi hay không:

range_offset_limit 0

Giới hạn bằng không tránh lấy thêm phần đầu chỉ để lấp bộ nhớ đệm. Chuyển tiếp phạm vi hữu ích mà không lưu đệm đối tượng vẫn có thể thành công. Với HTTPS CONNECT thông thường, trao đổi Range nằm trong TLS của đích; đọc phản hồi đó thay vì coi chính sách đệm đối tượng nhìn thấy của Squid là điều khiển yêu cầu bên trong.

Bài viết liên quan