设置http缓存
⑴ http下载默认缓存
为了提高访问网页的速度,Internet Explorer浏览器会采用累积式加速的方法,将你曾经访问的网页内容(包括图片以及cookie文件等)存放在电脑里。这个存放空间,我们就称它为IE缓存。以后我们每次访问网站时,IE会首先搜索这个目录,如果其中已经有访问过的内容,那IE就不必从网上下载,而直接从缓存中调出来,从而提高了访问网站的速度。 设置IE缓存大小: 要提高IE的访问速度,IE缓存是必不可少的。IE缓存默认安装在系统区,而且会需要占用较大的系统空间。所以如果你的系统空间的确很紧张,可以将缓存占用的空间设得小一点,在IE的“工具”菜单下选择“Internet选项”,然后在“常规”选项卡中你会看到有“Internet临时文件”这一项,单击“设置”按钮,然后在弹出的“设置”对话框中将缓存大小设置为一个合适的值。你也可以直接将IE缓存移动到其它位置上去。 “Internet临时文件”下单击“设置”,然后在“设置”对话框中单击“移动文件夹”按钮,在“浏览文件夹”中选择文件夹,将IE缓存移动到其他地方,这样就不必担心IE缓存太大,占用更多空间了。 IE缓存就是上网后留下的痕迹。 可以删除。。删除后会加快浏览器的速度`` 只有好处没坏处` 为了提高访问网页的速度,InternetExplorer浏览器会采用累积式加速的方法,将你曾经访问的网页内容(包括图片以及cookie文件等)存放在电脑里。这个存放空间,我们就称它为IE缓存。以后我们每次访问网站时,IE会首先搜索这个目录,如果其中已经有访问过的内容,那IE就不必从网上下载,而直接从缓存中调出来,从而提高了访问网站的速度。 如何删除? 1、点击打开一个IE。 2、点击菜单栏中的“工具”菜单中的“internet选项” 3、在弹出的对话框中点击“删除文件”. 4、在弹出的对话框中”删除所有脱机内容”打勾,之后 点确定. 5、点击确定后,鼠标可能会变成比较忙的状态,这是因为缓存较多的缘故,一般情况下十秒左右鼠标就会恢复正常。之后再点击右下角的“确定”退出。这样电脑IE的缓存就清除完毕了。 另外还可以用windos优化大师删除
⑵ 在HTTP报文中增加缓存控制和在html的meta中做缓存控制有什么区别
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页面默认是不缓存的
//本页面允许在浏览器端或缓存服务器中缓存,时限为20秒。
//20秒之内重新进入该页面的话不会进入该servlet的
java.util.Date date = new java.util.Date();
response.setDateHeader("Last-Modified",date.getTime()); //Last-Modified:页面的最后生成时间
response.setDateHeader("Expires",date.getTime()+20000); //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", 0);
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怎么设置http头部缓存
用于设定网页的到期时间,一旦过期则必须到服务器上重新调用。需要注意的是必须使用GMT时间格式;
<meta http-equiv="Expires" contect="Mon,12 May 2001 00:20:00 GMT">
用于设定禁止浏览器从本地机的缓存中调阅页面内容,设定后一旦离开网页就无法从Cache中再调出;
<meta http-equiv="Pragma" contect="no-cache">
⑷ 使用HTTP协议获取网页时,为何经常会设置Web缓存(代理服务器)
网页下载到本地就会放到硬盘里的,你可以设置ie每次都检查硬盘里的旧内容的较新版本,就相当于不要缓存了。
⑸ js给jquery.min.js的HTTP请求头里设置缓存
HTTP缓存控制是通过Cache-Control头字段进行的,但是咱先说明白了,你是要在请求里设置,还是在响应里设置,典型情况下是服务器在响应里设置,可你说要用JS在请求里设置?
⑹ traffic server 怎么缓存http页面
客户端指示
默认情况下,Traffic Server不缓存含有如下请求头部的对象:
Cache-Control: no-store头部
Cache-Control: no-cache头部
配置Traffic Server忽略Cache-Control: no-cache头部,见Configuring Traffic Server to Ignore Client no-cache Headers。
Cookie: 头部(文本对象)
默认情况下,Traffic Server缓存为包含cookies请求服务的响应对象(除了文本对象)。可以配置Traffic
Server不缓存任何类型的cookies内容、缓存所有的cookies内容或者只缓存图片类型的cookies内容。更多信息见Caching
Cookied Objects。
Authorization: 头部
配置Traffic Server忽略客户端的no-cache头部
默认情况下,Traffic Server严格遵守客户端Cache-Control:
no-cache的指示。如果一个被请求的对象包含no-cache头部,即使它在缓存中仍然有效,Traffic
Server也会将该请求传递给源服务器。可以配置Traffic
Server忽略客户端no-cache指示,这样它将忽略客户端请求的no-cache头部并用缓存中的对象服务该请求。
配置Traffic Server忽略客户端的no-cache头部
1. 在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。
2. 编辑下面的变量:
变量
描述
proxy.config.http.cache.ignore_client_no_cache
设置这个变量为1来忽略客户端请求旁路缓存。
3. 保存并关闭records.config文件
4. 定位到Traffic Server的bin目录
5. 运行traffic_line –x命令来应用配置文件的变更。
源服务器指示
默认情况下,Traffic Server不缓存包含如下响应头部的对象:
Cache-Control: no-store头部
Cache-Control: private头部
WWW-Authenticate: 头部
要配置Traffic Server忽略WWW-Authenticate头部,见Configuring Traffic Server to Ignore WWW-Authenticate Headers。
Set-Cookie: 头部
Cache-Control: no-cache头部
要配置Traffic Server忽略no-cache头部,见Configuring Traffic Server to Ignore Server no-cache Headers。
Expires: 头部包含0值或过去时间
配置Traffic Server忽略服务器no-cache头部
默认情况下,Traffic Server严格遵守Cache-Control:
no-cache指示。一个来自源服务器的带有no-cache头部的响应将不会被存储在缓存,该对象之前在缓存中的拷贝也会被删除。如果配置
Traffic Server忽略no-cache头部,Traffic
Server同时也忽略no-store头部。在大多数情况下是应该遵守no-cache指示的。
配置Traffic Server忽略服务器no-cache头部
1. 在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。
2. 编辑下面的变量:
变量
描述
proxy.config.http.cache.ignore_server_no_cache
设置这个变量为1来忽略服务器旁路缓存。
3. 保存并关闭records.config文件
4. 定位到Traffic Server的bin目录
5. 运行traffic_line –x命令来应用配置文件的变更。
配置Traffic Server忽略WWW-Authenticate头部
默认情况下,Traffic Server不缓存包含WWW-Authenticate响应头部的对象。WWW-Authenticate头部包含着客户端准备用来响应源服务器挑战应答的鉴定参数。
当配置Traffic
Server忽略源服务器的WWW-Authenticate头部,所有带WWW-Authenticate头部的对象将被存储在缓存中被用来服务后来的
请求,在大多数情况下,应该使用默认的不缓存带WWW-Authenticate头部对象的行为。只有在对HTTP
1.1深入理解的基础上,再尝试配置Traffic Server忽略服务器WWW-Authenticate头部。
配置Traffic Server忽略WWW-Authenticate头部
1. 在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。
2. 编辑下面的变量:
变量
描述
proxy.config.http.cache.ignore_authentication
设置这个变量为1来缓存带WWW-Authenticate头部的对象。
3. 保存并关闭records.config文件
4. 定位到Traffic Server的bin目录
5. 运行traffic_line –x命令来应用配置文件的变更。
配置指示
除了客户端和服务器的指示,Traffic Server同样响应配置选项和文件的指示。
可以按如下步骤来配置Traffic Server:
l 不缓存任何对象(见Disabling HTTP Object Caching)。
缓存动态内容 — 对象的URL以.asp结尾或者包含问号(?)、分号(:)或者cgi。更多信息见Caching Dynamic Content。
缓存响应Cookie: 头部的对象(见Caching Cookied Objects)。
遵守cache.config文件中的从不缓存规则(见cache.config)。
关闭HTTP 对象缓存功能
默认情况下,Traffic Server缓存除了在cache.config文件中设置了从不缓存规则的所有对象。可以关闭HTTP 对象缓存功能,所有的对象都直接由源服务器服务而且从不缓存。
手动配置关闭HTTP对象缓存功能:
1. 在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。
2. 编辑下面的变量:
变量
描述
proxy.config.http.cache.http
设置这个变量为0来关闭HTTP对象缓存功能。
3. 保存并关闭records.config文件
4. 定位到Traffic Server的bin目录
5. 运行traffic_line –x命令来应用配置文件的变更。
缓存动态内容
一个以.asp结尾或包含问号(?)、分号(;)或者cgi的URL被认为是动态的。Traffic Server不缓存冬天内容。可以配置Traffic Server缓存动态内容,当然这只推荐在专门的代理情形下使用。
配置Traffic Server缓存动态内容:
1. 在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。
2. 编辑下面的变量:
变量
描述
proxy.config.http.cache_urls_that_look_dynamic
设置这个变量为1来缓存动态内容。
3. 保存并关闭records.config文件
4. 定位到Traffic Server的bin目录
5. 运行traffic_line –x命令来应用配置文件的变更。
缓存Cookied对象
默认情况下,Traffic Server缓存为包含cookies请求服务的响应对象(除了文本对象)。Traffic
Server之所以不缓存文本内容的cookied,是因为对象的头部和对象是一起存储的,而带有隐私的cookie头部是不能和对象一起保存的。对于非
文本对象,不能确定是否使用了带有隐私的cookie头部。
可以配置Traffic Server:
不缓存任何类型的cookies内容。
只缓存图片类型的cookies内容。
缓存所有的cookies内容。
配置Traffic Server缓存cookied内容的方式:
1. 在文本编辑器中打开位于Traffic Server的config目录下的records.config文件。
2. 编辑下面的变量:
变量
描述
proxy.config.http.cache.cache_responses_to_cookies
设置这个变量来指定Traffic Server缓存cookied内容的方式:
0 = 不缓存任何cookies响应。
1 = 缓存所有的cookies响应。
2 = 只缓存图片类型的cookies响应。
3 = 缓存除了文本内容类型的所有cookies响应。
3. 保存并关闭records.config文件
4. 定位到Traffic Server的bin目录
5. 运行traffic_line –x命令来应用配置文件的变更。
⑺ BT每个HTTP连接磁盘缓存大小如何设置
这个没有太大的要求了,一般说来软件的默认设置现在已经调到合理范围了。如果你是近两年买的硬盘也不需要担心因为bt下载损伤硬盘,因为现在的硬盘缓存也比较大了。但是老式的硬盘则需要区别对待。一般有个十几M就差不多了吧。
⑻ HTTP协议中可以控制缓存的有哪些
通过响应来控制缓存,在响应头中主要有cache-control、pragma、expires三个响应头,其中expires是HTTP1.0中的响应头,后面直接跟一个缓存失效日期,但是服务器和客户端之间的时钟往往不同,因此通过该响应头来控制缓存失效时间不准确,一般不用,如果要设置客户端不缓存,则设置响应头“expires: -1”即可;pragema是HTTP1.1协议为了兼容HTTP1.0+协议,用来控制不缓存,“pragma: no-cache";cache-control是HTTP1.1中的响应头,其参数为相对的秒值,即过多少秒缓存失效,因此建议使用该响应头来控制缓存失效时间,其后可以跟的内容有no-cache、no-store、max-age、must-revalidate
为了兼容各个协议版本,要想客户端不缓存资源,一般都添加三个响应头:cache-control: no-cache、pragma: no-cache、expires: -1
注意:cache-control: no-cache控制缓存,客户端是会缓存资源的,只是在于原始服务器进行再验证之前不会想客户端提供资源,也就是资源新鲜度永远过期,这样比直接访问服务器节省了资源在网络中的传输成本,相比开启缓存增加了再验证的成本,性能失效介于两者之间;要想客户端缓存不从响应中拷贝资源副本,则应该使用cache-control: no-store,使用该响应头内容也可以让缓存立即删除已经拷贝的副本;而must-revalidate是服务器希望缓存能严格遵守过期信息,一般情况下类似no-cache,但在缓存与原始服务器进行新鲜度验证的时候,原始服务器不可用,这将会导致这一段时间中访问该资源会504 gateway timeout,因此建议使用no-cache
⑼ 如何正确设置Web缓存
在网络里传输的每个文件都有mime类型这是http协议里面的,服务器必须正确设置,就是将后缀名不同的文件的mime设置为不同,具体怎么设置可以上网查询。
#号后面的是注释,你随便写删掉也可以,明白么,一般写上时间和版本是为了调试,因为你改了你的程序文件,浏览器还会从缓存里面获取,你必须更改你的manifest文件,浏览器才会更新本地文件,而更改manifest文件的方式你可以自己定义,最好的方法就是设置注释每次更改注释
⑽ asp.net怎么设置浏览器客户端缓存
1. Expires:+过期时间
表示在指定时间后浏览器缓存失效,需要注意的是这儿的过期时间必须是HTTP格式的日期时间,其他的都会被解析成当前时间“之前”,缓存会马上过期,HTTP的日期时间必须是格林威治时间(GMT),而不是本地时间。举例: