-
expires
鎖定
Expires是RFC 2616(HTTP/1.0)協議中和網頁緩存相關字段。用來控制緩存的失效日期,要注意的是,HTTP/1.0有一個功能比較弱的緩存控制機制:Pragma,使用HTTP/1.0的緩存將忽略Expires和Cache-Control頭。
- 外文名
- expires
- 協 議
- RFC 2616(HTTP/1.1)協議
- 含 義
- 失效日期及相關意義
expires簡單解釋
expires通常被理解為失效日期及相關意義,DBA通常把expires作為表示過期數量或者過期時間的字段。
expiresExpires詳解
Expires字段聲明瞭一個網頁或URL地址不再被瀏覽器緩存的時間,一旦超過了這個時間,瀏覽器就應該聯繫原始服務器。RFC告訴我們:“由於推斷的失效時間也許會降低語義透明度,應該被謹慎使用,同時我們鼓勵原始服務器儘可能提供確切的失效時間。” 對於一般的純靜態頁面,如html、gif、jpg、css、js,默認安裝的Apache服務器,不會在響應頭添加這個字段。Firefox瀏覽器接受到響應後,如果發現沒有Expires字段,瀏覽器根據文件的類型和“Last-Modified”字段來推斷出一個合適的失效時間,並存儲在客户端。推測出的時間一般是接受到響應時間後的三天左右。 Apache的expires_module模塊可以在Http響應頭部自動加上Expires字段。在Apache的httpd.conf文件中進行如下配置: #啓用expires_module模塊 LoadModule expires_module modules/mod_expires so # 啓用有效期控制 ExpiresActive On # GIF有效期為1個月 ExpiresByType image/gif A2592000 # HTML文檔的有效期是最後修改時刻後的一星期 ExpiresByType text/html M604800 #以下的含義類似 ExpiresByType text/css “now plus 2 month” ExpiresByType text/js “now plus 2 day” ExpiresByType image/jpeg “access plus 2 month” ExpiresByType image/bmp “access plus 2 month” ExpiresByType image/x-icon “access plus 2 month” ExpiresByType image/png “access plus 2 month” 對於動態頁面,如果在頁面內部沒有通過函數強制加上Expires,例如header(”Expires: ” . gmdate(”D, d M Y H:i:s”) . ” GMT”),Apache服務器會把Wed, 11 Jan 1984 05:00:00 GMT作為Expires字段內容,返回給瀏覽器。即認為動態頁面總是失效的。而瀏覽器仍然會保存已經失效的動態頁面。 可以發現Firefox瀏覽器總是緩存所有頁面,不管失效、不失效還是沒有聲明失效時間。即使緩存中聲明瞭一個網頁的實效日期是1970-01-01 08:00:00,瀏覽器仍然會發送該文件在緩存中的Last-Modified和ETag字段。 如果在服務器端驗證通過,返回304狀態,瀏覽器就還會使用此緩存。
- 詞條統計
-
- 瀏覽次數:次
- 編輯次數:14次歷史版本
- 最近更新: 花落soso家