当前位置: 首页 > 知识 >正文

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文件。

如何禁止IIS缓存静态文件(png、js、html)打开IIS,然后打开IIS属性页,勾选“允许直接编辑配置数据库”选项。

2. Enter Notepad C: \ Windows \ System32 \ inetsrv \ metabase.xml to open the configuration file (the same as ImmigrationInspectors) during operation.

3.在文件中搜索禁止缓存的虚拟目录的名称,并找到类似下面的配置部分。

访问标志='访问读取访问脚本'

AppFriendlyName='inc'

AppIsolated='2'

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

DirBrowseFlags=' DirBrowseShowDate DirBrowseShowTime dirbrowseshowsesize 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对静态文件的缓存。

相关文章:
  • 7月5日基金净值:汇添富6月红添利定开债A最新净值0.962,跌0.1%
  • 6月30日基金净值:华安聚优精选混合最新净值0.7064,涨0.68%
  • ?林园重仓股被机构强烈看好!最新券商调高评级公司、主力资金净买入公司名单曝光!
  • 5月22日基金净值:汇添富美丽30混合A最新净值2.809,涨0.97%
  • 6月28日基金净值:长城久富混合(LOF)A最新净值1.3711,跌0.5%
  • 迎接买方投顾时代,未试点券商也摩拳擦掌!筹备超两年、已组建团队…
  • 别动辄就想抄底!把港股当作债券市场来长期配置,或许还有赢率
  • 6月14日基金净值:富国内需增长混合A最新净值1.3951,涨1%
  • 5月22日基金净值:嘉实丰和灵活配置混合A最新净值1.9868,涨0.53%
  • 4月17日基金净值:华夏中证内地低碳经济主题ETF最新净值0.7595,涨0.93%