ใช้การดาวน์โหลดต่อเฉพาะเมื่อ 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 ช่วยเลี่ยงการต่อทรัพยากรคนละเวอร์ชันเข้าด้วยกันได้ ทำตามกฎรูปแทนของแอปก่อนเชื่อถือไฟล์ที่ครบแล้ว

range_offset_limit ใน Squid 6.13 ควบคุมว่าจะดึงออบเจ็กต์ตั้งแต่ต้นเพื่อแคชเมื่อใด ไม่ได้ควบคุมว่าไคลเอนต์ขอช่วงได้หรือไม่:

range_offset_limit 0

ขีดจำกัดศูนย์เลี่ยงการดึงส่วนต้นเพิ่มเพียงเพื่อเติมแคช การส่งต่อช่วงที่มีประโยชน์โดยไม่แคชออบเจ็กต์ยังสำเร็จได้ สำหรับ HTTPS CONNECT ปกติ การโต้ตอบ Range อยู่ภายใน TLS ของปลายทาง ให้อ่านคำตอบนั้น ไม่ใช่ถือว่านโยบายแคชออบเจ็กต์ที่ Squid มองเห็นควบคุมคำขอข้างใน

บทความที่เกี่ยวข้อง