博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关于HTML(JSP)页面的缓存设置 -- cache-control
阅读量:4343 次
发布时间:2019-06-07

本文共 1547 字,大约阅读时间需要 5 分钟。

我在项目中遇到这么一个问题,当用户登录了系统后,进入并copy下系统某个页面的link,然后关闭浏览器,重新打开浏览器,把刚才复制好的link paste到浏览器的地址栏去,直接enter,发现浏览器跳过了登录页面而直接进入刚才进入到的页面里了。

      这个问题,我一开始以为是我的URL sercurity 的问题,搞了很久,最后才发现是缓存的问题。
然后就在JSP页面做如下设置,就完美解决了这个问题。
在JSP页面头加上如下代码段:

<%  
response.setHeader( "Cache-Control", "no-cache,no-store");//HTTP 1.1
response.setDateHeader( "Expires", 0 ); //prevent caching at the proxy server
response.setHeader( "Pragma", "no-cache" );  //HTTP 1.0  
%>
在HTML的head标签里面加上如下代码段:
<meta http-equiv="Pragma" content="no-cache">  
<meta http-equiv="Cache-Control" content="no-cache">  
<meta http-equiv="Expires" content="Sat, 01 Dec 2001 00:00:00 GMT">  
如上设置即可使页面在每次访问时都必须向服务器发出请求。
下面是网上找到的关于HTML里缓存的cache-control的设置描述:
网页的缓存是由HTTP消息头中的“Cache-control”来控制的,常见的取值有private、no-cache、max-age、must-revalidate等,默认为private。其作用根据不同的重新浏览方式分为以下几种情况:
1) 打开新窗口 值为private、no-cache、must-revalidate,那么打开新窗口访问时都会重新访问服务器。 而如果指定了max-age值,那么在此值内的时间里就不会重新访问服务器,例如: Cache-control: max-age=5(表示当访问此网页后的5秒内再次访问不会去服务器) 
2) 在地址栏回车 值为private或must-revalidate则只有第一次访问时会访问服务器,以后就不再访问。 值为no-cache,那么每次都会访问。 值为max-age,则在过期之前不会重复访问。
3) 按后退按扭 值为private、must-revalidate、max-age,则不会重访问, 值为no-cache,则每次都重复访问 
4) 按刷新按扭 无论为何值,都会重复访问 Cache-control值为“no-cache”时,访问此页面不会在Internet临时文章夹留下页面备份。
另外,通过指定“Expires”值也会影响到缓存。例如,指定Expires值为一个早已过去的时间,那么访问此网时若重复在地址栏按回车,那么每次都会重复访问: Expires: Fri, 31 Dec 1999 16:00:00 GMT 比如:禁止页面在IE中缓存 http响应消息头部设置: CacheControl = no-cache Pragma=no-cache Expires = -1 Expires是个好东东,如果服务器上的网页经常变化,就把它设置为-1,表示立即过期。
posted on
2016-01-07 20:49 阅读(
...) 评论(
...)

转载于:https://www.cnblogs.com/mengfff/p/5111157.html

你可能感兴趣的文章
虚拟机centOs Linux与Windows之间的文件传输
查看>>
IOS内存管理
查看>>
middle
查看>>
[Bzoj1009][HNOI2008]GT考试(动态规划)
查看>>
Blob(二进制)、byte[]、long、date之间的类型转换
查看>>
OO第一次总结博客
查看>>
day7
查看>>
iphone移动端踩坑
查看>>
vs无法加载项目
查看>>
Beanutils基本用法
查看>>
玉伯的一道课后题题解(关于 IEEE 754 双精度浮点型精度损失)
查看>>
《BI那点儿事》数据流转换——百分比抽样、行抽样
查看>>
哈希(1) hash的基本知识回顾
查看>>
Leetcode 6——ZigZag Conversion
查看>>
dockerfile_nginx+PHP+mongo数据库_完美搭建
查看>>
Http协议的学习
查看>>
【转】轻松记住大端小端的含义(附对大端和小端的解释)
查看>>
设计模式那点事读书笔记(3)----建造者模式
查看>>
ActiveMQ学习笔记(1)----初识ActiveMQ
查看>>
Java与算法之(2) - 快速排序
查看>>