本文共 582 字,大约阅读时间需要 1 分钟。
浏览器缓存是个好东西,在NGINX中配置也超级简单,但是如果遇到敏感文件、不希望用户通过查看浏览器缓存的方式下载该文件,怎么办?
近期项目正好遇到了此种遇求,需要屏蔽用户通过缓存方式下载网站的视频文件,试了很多种禁用NGINX浏览器缓存的方法,比如:
location ~ .mp4$ {expires -1;}按理说将expires的值设为负数应该能禁掉缓存,然而并没有,通过缓存仍然能轻松获取该视频文件。
好吧,再来试下一个方法:
location ~ .mp4$ {expires off;}
直接将expires 的值设为off,即关闭,想想应该可以了,但是,打开缓存一看,我擦,视频文件仍然在!
最后,只好放大招了:
location ~ .mp4$ {add_header Cache-Control no-store;}
看到没,直接加了header设CACHE-CONTROL为NO-STORE,这时浏览器header的HTTP头返回该文件时显示:Cache-Control no-store;,然后浏览器缓存中再也看不到此文件啦,目的达到。而将expires设为负数或OFF,Cache-Control no-cache;不缓存,但文件仍然能在缓存中看到,只是不使用而已。
本文件由http://www.12reads.cn/原创,转载请注明。