国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > HTML > 正文

頁面的緩存與不緩存設置及html頁面中meta的作用

2020-03-24 16:07:04
字體:
來源:轉載
供稿:網友
HTML的HTTP協議頭信息中控制著頁面在幾個地方的緩存信息,包括瀏覽器端,中間緩存服務器端(如:squid等),Web服務器端。本文討論頭信息 中帶緩存控制信息的html' target='_blank'>HTML頁面(JSP/Servlet生成好出來的也是HTML頁面)在中間緩存服務器中的緩存情況。
HTTP協議中關于緩存的信息頭關鍵字包括Cache-Control(HTTP1.1),Pragma(HTTP1.0),last-Modified,Expires等。
HTTP1.0中通過Pragma 控制頁面緩存,可以設置:Pragma或no-cache。網上有非常多的文章說明如何控制不讓瀏覽器或中間緩存服務器緩存頁面,通常設置的值為no- cache,不過這個值不這么保險,通常還加上Expires置為0來達到目的。但是如我們刻意需要瀏覽器或緩存服務器緩存住我們的頁面這個值則要設置為 Pragma。
HTTP1.1中啟用Cache-Control 來控制頁面的緩存與否,這里介紹幾個常用的參數: no-cache,瀏覽器和緩存服務器都不應該緩存頁面信息;
public,瀏覽器和緩存服務器都可以緩存頁面信息;
no-store,請求和響應的信息都不應該被存儲在對方的磁盤系統中;
must-revalidate,對于客戶機的每次請求,代理服務器必須想服務器驗證緩存是否過時;
Last-Modified只頁面的最后生成時間,GMT格式;
Expires過時期限值,GMT格式,指瀏覽器或緩存服務器在該時間點后必須從真正的服務器中獲取新的頁面信息;
上面兩個值在JSP中設置值為字符型的GMT格式,無法生效,設置long類型才生效;
下面是一個測試例子:
package com.servlet;import java.io.IOException;import java.io.PrintWriter;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;public class ServletA extends HttpServlet {@Overridepublic void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");//servlet頁面默認是不緩存的//本頁面允許在瀏覽器端或緩存服務器中緩存,時限為秒。//秒之內重新進入該頁面的話不會進入該servlet的java.util.Date date = new java.util.Date(); response.setDateHeader("Last-Modified",date.getTime()); //Last-Modified:頁面的最后生成時間 response.setDateHeader("Expires",date.getTime()+); //Expires:過時期限值 response.setHeader("Cache-Control", "public"); //Cache-Control來控制頁面的緩存與否,public:瀏覽器和緩存服務器都可以緩存頁面信息;response.setHeader("Pragma", "Pragma"); //Pragma:設置頁面是否緩存,為Pragma則緩存,no-cache則不緩存//不允許瀏覽器端或緩存服務器緩存當前頁面信息。/*response.setHeader( "Pragma", "no-cache" ); response.setDateHeader("Expires", ); response.addHeader( "Cache-Control", "no-cache" );//瀏覽器和緩存服務器都不應該緩存頁面信息response.addHeader( "Cache-Control", "no-store" );//請求和響應的信息都不應該被存儲在對方的磁盤系統中; response.addHeader( "Cache-Control", "must-revalidate" );*///于客戶機的每次請求,代理服務器必須想服務器驗證緩存是否過時;System.out.println("進入了servlet");response.getWriter().write("歡迎光臨我的主頁");} 如果需要在html頁面上設置不緩存,這在 head 標簽中加入如下語句:
meta http-equiv="pragma" content="no-cache" meta http-equiv="cache-control" content="no-cache" meta http-equiv="expires" content="" 附:html頁面中meta的作用
meta是用來在HTML文檔中模擬HTTP協議的響應頭報文。meta 標簽用于網頁的 head 與 /head 中,meta 標簽的用處很多。meta 的屬性有兩種:name和http-equiv。name屬性主要用于描述網頁,對應于content(網頁內容),以便于搜索引擎機器人查找、分類(目前幾乎所有的搜索引擎都使用網上機器人自動查找meta值來給網頁分類)。這其中最重要的是description(站點在搜索引擎上的描述)和keywords(分類關鍵詞),所以應該給每頁加一個meta值。比較常用的有以下幾個:
name 屬性
1、 meta name="Generator" contect="" 用以說明生成工具(如Microsoft FrontPage 4.0)等;
2、 meta name="KEYWords" contect="" 向搜索引擎說明你的網頁的關鍵詞;
3、 meta name="DEscription" contect="" 告訴搜索引擎你的站點的主要內容;
4、 meta name="Author" contect="你的姓名" 告訴搜索引擎你的站點的制作的作者;
5、 meta name="Robots" contect= "all|none|index|noindex|follow|nofollow"
其中的屬性說明如下:
設定為all:文件將被檢索,且頁面上的鏈接可以被查詢;
設定為none:文件將不被檢索,且頁面上的鏈接不可以被查詢;
設定為index:文件將被檢索;
設定為follow:頁面上的鏈接可以被查詢;
設定為noindex:文件將不被檢索,但頁面上的鏈接可以被查詢;
設定為nofollow:文件將不被檢索,頁面上的鏈接可以被查詢。
http-equiv屬性
1、 meta http-equiv="Content-Type" contect="text/html";charset=gb_2312-80" 和 meta http-equiv="Content-Language" contect="zh-CN" 用以說明主頁制作所使用的文字以及語言;
又如英文是ISO-8859-1字符集,還有BIG5、utf-8、shift-Jis、Euc、Koi8-2等字符集;
2、 meta http-equiv="Refresh" contect="n;url=http://yourlink" 定時讓網頁在指定的時間n內,跳轉到頁面http://yourlink;
3、 meta http-equiv="Expires" contect="Mon,12 May 2001 00:20:00 GMT" 可以用于設定網頁的到期時間,一旦過期則必須到服務器上重新調用。需要注意的是必須使用GMT時間格式;
4、 meta http-equiv="Pragma" contect="no-cache" 是用于設定禁止瀏覽器從本地機的緩存中調閱頁面內容,設定后一旦離開網頁就無法從Cache中再調出;
5、 meta http-equiv="set-cookie" contect="Mon,12 May 2001 00:20:00 GMT" cookie設定,如果網頁過期,存盤的cookie將被刪除。需要注意的也是必須使用GMT時間格式;
6、 meta http-equiv="Pics-label" contect="" 網頁等級評定,在IE的internet選項中有一項內容設置,可以防止瀏覽一些受限制的網站,而網站的限制級別就是通過meta屬性來設置的;
7、 meta http-equiv="windows-Target" contect="_top" 強制頁面在當前窗口中以獨立頁面顯示,可以防止自己的網頁被別人當作一個frame頁調用;
8、 meta http-equiv="Page-Enter" contect="revealTrans(duration=10,transtion= 50)" 和 meta http-equiv="Page-Exit" contect="revealTrans(duration=20,transtion=6)" 設定進入和離開頁面時的特殊效果,這個功能即FrontPage中的“格式/網頁過渡”,不過所加的頁面不能夠是一個frame頁面。
以上所述是小編給大家介紹的頁面的緩存與不緩存設置及html頁面中meta的作用的相關知識,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對phpstudy網站的支持!更多編程語言

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 望江县| 邓州市| 县级市| 大港区| 公安县| 应城市| 陈巴尔虎旗| 始兴县| 达日县| 朝阳区| 疏勒县| 扶风县| 宁晋县| 宿松县| 崇阳县| 盐津县| 克什克腾旗| 贡嘎县| 故城县| 奉化市| 宁德市| 石棉县| 吐鲁番市| 江北区| 丽水市| 海宁市| 晋州市| 泸州市| 兴文县| 永顺县| 诸暨市| 铜川市| 梅州市| 东海县| 耿马| 合山市| 普定县| 郑州市| 无锡市| 梨树县| 延庆县|