页面缓存 - PHP中如何禁用用户本地浏览器缓存?
天蓬老师
天蓬老师 2017-04-10 14:34:55
[PHP讨论组]

题境: 企业内部一些文件,通过flexpaper在线浏览,原本的office文件都转化成了swf格式,而公司这些文件是只允许员工在线浏览,不允许复制、打印与传播的,如果本地缓存(临时)文件夹中包含这个swf文件,就可以直接拿走并传播了(即使不能完全控制住,但如果达到IE临时文件夹中没有随意缓存此文件的话,也能一定程度上达到效果)

我希望用户本地IE临时文件夹不能缓存某页面的内容,查找资料一般都是php中header控制,html中meta控制,然后我也试用了,结果都没达到效果,在IE对应的本地缓存文件夹中还是可以找到该页面的内容,请各位帮忙指点一下,谢谢了

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(3)
怪我咯

我在 IE 对应的本地缓存文件夹中还是可以找到该页面的内容

在缓存文件夹中找到很正常。

至于你的问题「如何禁用用户本地缓存」,可以把缓存文件夹设置为只读。别笑,我很正经的。

你只看了 header,为什么不看看 Status Code 啊?如果是 304,则表示 Not Modified,说明被缓存了。

如果被缓存了,会不会在本地缓存文件夹中找到呢?答案是可能会。

本地缓存是浏览器的功能,可以不用去管。

禁用缓存的目的是:当你去请求 web server 时,server 总是把最新的文件给出浏览器,而不用检测这个文件是否更新过。当他传回浏览器的时候,浏览器 IE 就把这个文件(或者一部分)放到本地存起来。

虽然这个文件夹被称为「缓存文件夹」,其实他只是是「临时文件夹」。

其它浏览器也许不使用「缓存文件夹」,比如使用一个小型数据库系统,例如 sqlite。

其实,把内存的内容放到硬盘上,是一种传统,也是一种哲学。

操作系统也经常把一些内存放到硬盘里,「微软」管它叫「虚拟内存」。

最后回答作者的问题:如何禁用本地缓存?没必要。

我非要禁用。

  1. 设置为只读
  2. 在 IE 的设置里面应该可以禁用
  3. 修改注册表
PHP中文网

这个问题的本质需求是在浏览器里面做文档安全,我知道的有几种做法:
1、在IE中使用控件,可以很好的控制office文档的权限,可以先看看NTKO的资料。
2、转换为FALSH的格式,好像控制每次从服务器上获取一页的内容,这样的话大大提高了拿走文件的难度。

PHP中文网

说一个相关的非技术问题:

录屏软件!

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号