เป็นไปได้ที่จะแคชสินทรัพย์ในหน้า github หรือไม่? ฉันสงสัยว่าถ้าฉันควรพิจารณาย้าย webapp ของฉันจากเซิร์ฟเวอร์ส่วนตัวไปยังหน้า github และสิ่งเดียวที่หยุดฉันได้คือ
เป็นไปได้ที่จะแคชสินทรัพย์ในหน้า github หรือไม่? ฉันสงสัยว่าถ้าฉันควรพิจารณาย้าย webapp ของฉันจากเซิร์ฟเวอร์ส่วนตัวไปยังหน้า github และสิ่งเดียวที่หยุดฉันได้คือ
คำตอบ:
เซิร์ฟเวอร์ที่ github.io ทำการแคชอย่างแน่นอน
ฉันมีการสาธิตการทำงานที่นั่นและสามารถระบุได้ว่าชุดเซิร์ฟเวอร์Last-Modified
ที่อนุญาตให้ไคลเอนต์ใช้งานIf-Modified-Since
และรับ 304 จากเซิร์ฟเวอร์หากข้อมูลไม่ได้ถูกแก้ไขตั้งแต่ถูกดึงข้อมูลล่าสุด CacheControl: max-age=600
เซิร์ฟเวอร์ยังชุด ฉันไม่ใช่ผู้เชี่ยวชาญด้านแคช แต่เข้าใจว่าหมายความว่าลูกค้าอาจดึงข้อมูลจากแคชได้โดยไม่ต้องตรวจสอบความถูกต้องอีกครั้งหากข้อมูลมีอายุไม่เกิน 10 นาที หากมีอายุมากกว่า 10 นาทีจะต้องตรวจสอบกับเซิร์ฟเวอร์ (ตรวจสอบความถูกต้อง) และอาจได้รับคำตอบ 304
ผลที่สุดคือลูกค้าจะไม่ดาวน์โหลดสิ่งที่ไม่เปลี่ยนแปลง แต่ใช้เวลาสูงสุด 10 นาทีเพื่อให้ลูกค้าพบว่ามีการเปลี่ยนแปลงเกิดขึ้น
แน่นอนทั้งหมดนี้สามารถเปลี่ยนแปลงได้เมื่อใดก็ตามที่ sysadmins ที่ github.io ตัดสินใจที่จะเปลี่ยน