服务器怎么禁止iis静态文件,如何禁止IIS缓存静态文件

禁止IIS缓存静态文件(png、js、html等)背景:

IIS为了提高性能,默认情况下会对静态文件js、html、gif、png等做内部缓存,这个缓存是在服务器iis进程的内存中的。IIS这么做在很大程度上可以提高静态文件的访问性能,在正常情况下只要静态文件更新了IIS也会更新缓存。但是如果更新的静态文件很多就有可能出现缓存不更新的情况。

弯路:

我遇到这样一个场景,服务器循环更新上万张股票行情图片,IIS也会对图片进行缓存,由于更新的频率很高,文件很多,就出现了IIS缓存文件超过几十分钟都无法更新的情况。

这时候直觉是浏览器对文件进行了缓存,于是就在IIS的目录上设置Http头:Cache-Control:no-cache,但是无济于事,浏览器请求服务器端得到的状态号是200,这可以说明浏览器确实是从服务器端得到了新的内容,而非读取浏览器本地缓存。

如何禁止IIS缓存静态文件(png、js、html等):

通过设置Http头不让浏览器缓存的方法在这个场景下是行不通的,因为缓存不是出现的客户端,而是出现在IIS服务器上;所以解决问题还需要从IIS本身入手,通过配置Metabase.xml文件禁止IIS缓存相应目录下的静态文件。

1. 首先需要设置IIS允许运行时编辑Metabase.xml文件

b9670811c4521ddf7f9944909baeb317.png

打开IIS,然后打开IIS属性页,勾选上“允许直接编辑配置数据库”选项

2. 在运行中输入notepad c:\WINDOWS\system32\inetsrv\MetaBase.xml 打开IIS配置文件

3. 在文件中搜索要配置禁止缓存的虚拟目录名字,找到类似如下配置节

AccessFlags="AccessRead | AccessScript"

AppFriendlyName="inc"

AppIsolated="2"

AppRoot="/LM/W3SVC/1832041641/Root/inc"

DirBrowseFlags="DirBrowseShowDate | DirBrowseShowTime | DirBrowseShowSize | DirBrowseShowExtension | DirBrowseShowLongDate | EnableDefaultDoc"

Path="D:\publish\inc"

>

在IIsWebVirtualDir配置节中添加 MD_VR_NO_CACHE=”1“ 属性

4. 保存配置文件,重启IIS即可。

如果想配置服务器上的所有站点都禁用IIS缓存可以通过修改注册表实现:

编辑注册表中的 DisableStaticFileCache值,0为启用,1为禁用 ,该键值的位置位于:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\InetInfo\Parameters

如果该键不存在可以新建。

注意事项:

通常情况下我们并不需要禁用IIS的静态文件缓存,iis会自动根据静态文件的修改时间自动更新缓存;只有在你遇到非常情况下才有必要禁用IIS缓存。IIS缓存和Http缓存相关头没有任何关系,在IIS上加缓存头没有办法清除掉IIS对静态文件的缓存。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/366523.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

汇编实验五

一、 二、 三、 四、 第一个 反汇编后发现不行 第二个 发现也不行 第三个 发现代码正确 五、 编写代码如下 调试后查看内存,发现数据相加了 六、 编写代码如下 发现逆序存储成功 七、实验总结 对于代码段的使用有了更加深入的了解。 但是对于代码段内存这块还是不懂…

eclipse RTC下载的代码无android sdk

问题现象: 修复过程: 1.无ADT,安装ADT(FQ操作) https://dl-ssl.google.com/android/eclipse/ a图 b图 2.下载android sdk a.下载 3.应用到eclipse中去 转载于:https://www.cnblogs.com/liuyj-vv/p/9299913.html

亚马逊免费使用套餐:在EC2 Linux实例上安装Tomcat 7

Amazon Web Services提供了12个月的免费使用期限,使开发人员可以在云中运行任何他们想要的东西。 免费层包括14个服务,其中Web开发人员最关注EC2服务。 EC2是一项服务,通过停止和启动Windows和/或Linux的虚拟实例来提供可调整大小的虚拟计算。…

笔记:隐式转换规则

学习并背诵全文 原始值 类型UndefinedNullStringBooleanNumber值undefinednull所有字符串true false所有数字/NaN 引用类型 Object的成员叫对象,包括Array,Function,Math,Date,JSON,RegExp等除了原始值…

ble连接过程建立_九点之蓝牙连接

蓝牙连接蓝牙连接是如何进入到连接状态呢,首先必须经历前面提到的广播阶段,主端通过扫描到从端的广播来发现这个设备,之后让主端发出连接请求来要求与从端建立连接,便可以进入到连接状态。由于蓝牙连接牵涉的点比较多,…

华为服务器系统蓝屏,服务器主机蓝屏

服务器主机蓝屏 内容精选换一换云服务器创建后区域固定,不能将云服务器转移到另一个区域,也不能将云服务器转移到另一个帐号。您可以通过镜像迁移方式实现云服务器的跨帐号跨区域迁移。服务器迁移的常见场景与常用的迁移方式请参考常见的服务器迁移场景。…

多对一映射、一对多映射

Emp员工表 Dept部门表 多对一映射 在查询时,需要获取两张以上关联表的数据,通过关联映射,可以由一个对象获取关联对象的信息,例如:查询一个Emp员工对象,可以 通过关联映射获取员工所在的部门Dept对象信息 …

一道面试题目引发的思考

起因 多列布局是前端一个经典的反复被提及的面试题目,最典型的即两列,左列定宽菜单栏,右列变宽为内容区域。 通常得到的答案无外乎左列浮动定宽,然后右列或浮动,或设置外边距,或绝对定位等等。偶尔会有面试…

uniapp弹出框_uniApp上拉刷新,下拉加载,以及筛选功能

uniApp插件市场有很多友好的插件,今天举一个例子如上图所示,实现上拉刷新,下来加载,右上角点击弹出筛选框,只需要在插件市场搜索刷新选择你想要的效果(也可以下载后自己改动效果)点击导入插件,会自动打开项…

乐高无限的服务器怎么建,乐高无限悬空房子怎么建造 建造方法介绍

乐高无限悬空房子怎么建造?很多玩家对此还不是很清楚,下面给大家带来乐高无限悬空房子建造方法,还不知道怎么建造的朋友一起来看看吧!建造方法悬空房子非常容易搭建,如果我们想要将已经搭建的房子悬空,就只需要将建筑下方的土地挖…

Hibernate学习(一)

搭建环境 1、创建普通的Java工程 2、添加相应的jar包,下载链接:https://files.cnblogs.com/files/AmyZheng/required.rar 第一个实例 1、引用jar包 2、创建数据库和表 DROP TABLE IF EXISTS t_customer ;CREATE TABLE t_customer (id INT(5) PRIMARY KE…

使用Spring Webservices构建SOAP Webservices代理模块

前一段时间,我想看看使用Spring Web Services编写Web服务代理(wsproxy)有多么容易。 所以,我想我会在Github上分享结果。 可以随意使用它 (Apache v2许可证)或将其用作自己开发的基础。 本文的其余部分将解…

joc杂志影响因子2019_排名 ‖ 2019年中国体育学期刊影响因子

近日,由中国科学文献计量评价研究中心、清华大学图书馆研制,《中国学术期刊(光盘版)》电子杂志社有限公司出版的《中国学术期刊影响因子年报》(2019版)发布。该年报是中国科学文献计量评价研究中心自2002年…

Confluence 6 MySQL 3.x 字符集编码问题

MySQL 3.x is 已知在大写和小写转换的时候有些问题(non-ASCII)。 问题诊断 请按照 Troubleshooting Character Encodings 页面中的内容对问题进行诊断。如果大小写字符串编码诊断显示不同,那么有可能是你数据库导致的。一个错误的数据库大小写…

手型向下 点击一下 福昕_PPT多张缩略图点击放大展示

↑点击上方“菜鸟PPT”关注,教你玩转PPT!多张图片单击放大展示,以前做过一个比较复杂的,在同一页PPT里面做,加了很多个“进入”和“退出”的动画,维护起来比较麻烦。今天,菜鸟菌跟大家一起来学习…

6个经典的JavaScript报错分析

代码报错是经常发生的一件事,我们要确定是什么原因造成的,以及如何避免错误。 1. Uncaught TypeError: Cannot read property 该错误说明没有某个属性,一般是该属性前面的值是undefined或者是null的情况会出现。 2. TypeError: ‘undefined…

git显示服务器所有分支,git 查看所有远程分支以及同步

在多台电脑使用git管理开发分支的时候,会出现这样的情况。电脑A创建了分支1,并且push上了远程仓库。电脑B本地clone仓库默认只会clone下master分支,而其他电脑A推送的分支是不会默认同步下来的。那么如何同步呢?查看电脑B本地仓库…

json-schema 可视化编辑器发布了

json-schema 的用途越来越广泛,除了定义数据结构外,我们还可以使用 json-schema 验证数据格式和生成随机数据,但是编写复杂数据结构的 json-schema 是非常痛苦的事情。假设一个 100 字段的数据结构,如果用 json-schema 定义&#…

tfw文件如何导入cad_如何将CAD的线稿导入PS并和底色分离

【新朋友】 点击标题下方的 CG伴学 迅速关注【老朋友】 点击右上角的按钮 分享 或者 收藏这是 【CG伴学 】制作的第249篇答疑教程观看往期视频教程请点击或者前往公众号自定义菜单【学习中心】我们专门制作了教程汇总目录,你可以根据标题关键词搜索获取我们在后台收…

Python全栈工程师(函数嵌套、变量作用域)

ParisGabriel 感谢 大家的支持 每天坚持 一天一篇 点个订阅吧 灰常感谢 当个死粉也阔以 Python人工智能从入门到精通 globals()/locals()函数:     globals()返回当前全局作用域内变量…