程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> 頁面的緩存與不緩存設置及html頁面中meta的感化

頁面的緩存與不緩存設置及html頁面中meta的感化

編輯:關於JAVA

頁面的緩存與不緩存設置及html頁面中meta的感化。本站提示廣大學習愛好者:(頁面的緩存與不緩存設置及html頁面中meta的感化)文章只能為提供參考,不一定能成為您想要的結果。以下是頁面的緩存與不緩存設置及html頁面中meta的感化正文


HTML的HTTP協定頭信息中掌握著頁面在幾個處所的緩存信息,包含閱讀器端,中央緩存辦事器端(如:squid等),Web辦事器端。本文評論辯論頭信息 中帶緩存掌握信息的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 {
@Override
public 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的感化的相干常識,願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved