HTTP協議的緩存控制需要遵循以下原則:
如果緩存的內容已經過期,緩存服務器將向源服務器發出驗證請求,通過HTTP的ETag頭信息或者Last-Modified頭信息,從而確定是否可以繼續使用當前內容直接提供服務。
在某些情況下(例如源服務器從網絡中斷開),緩存的內容在過期的情況下也可以直接提供服務。
如果在響應消息中不存在用于判斷內容是否有變化的驗證值(ETag頭信息或者Last-Modified頭信息),并且也沒有其他任何明顯的新鮮度信息,內容通常不會被緩存。
如果響應消息的頭信息告訴緩存不要保留副本,緩存就不會緩存相應內容。
如果請求信息需要源服務器認證或者涉及安全協議,相應的請求內容也不會被緩存。
如果緩存的內容含有過期時間和壽命信息,并且此時內容沒有過期,緩存內容近期被用于提供服務,并且內容的最后更新時間相對于最近使用的時間較長。
推薦文章