為了協助確保最新的內容傳回用戶端應用程式,用戶端快取原則和伺服器重新驗證需求的互動一律會導致最保守的快取原則。 本主題中的所有範例都說明在 1 月 1 日快取且在 1 月 4 日到期之資源的快取原則。
在下列範例中,最大過時值 (maxStale) 會與最大年齡一起使用 (maxAge):
如果快取原則設定
maxAge= 5 天,且未指定maxStale值,則maxAge根據值,內容會可供使用,直到 1 月 6 日為止。 不過,根據伺服器的重新驗證需求,內容會在 1 月 4 日到期。 因為內容到期日較保守(較早),所以比maxAge政策更優先。 因此,內容會在 1 月 4 日到期,即使尚未達到其最大有效期,也必須重新驗證。如果快取原則設定
maxAge= 5 天和maxStale= 3 天,則maxAge根據值,內容可使用到 1 月 6 日為止。 根據maxStale值,內容可在 1 月 7 日之前使用。 因此,內容會在 1 月 6 日重新驗證。如果快取原則設定
maxAge= 5 天和maxStale= 1 天,則maxAge根據值,內容會可供使用,直到 1 月 6 日為止。 根據maxStale值,內容可在 1 月 5 日之前使用。 因此,內容會在 1 月 5 日重新驗證。
如果最大年齡小於內容到期日,較保守的快取行為將始終佔優勢,且最大過期值沒有影響。 下列範例說明在內容到期前達到最大存留期 (maxStale) 值時設定最大過時maxAge值的效果:
如果快取原則將
maxAge設定為 1 天且未指定maxStale的值,即使內容尚未過期,仍會在 1 月 2 日重新驗證內容。如果快取原則設定
maxAge= 1 天和maxStale= 3 天,則會在 1 月 2 日重新驗證內容,以強制執行更保守的原則設定。如果快取原則設定
maxAge= 1 天和maxStale= 1 天,則會在 1 月 2 日重新驗證內容。