服务器 
首页 > 服务器 > 浏览文章

IIS中User-mode caching引起的Cache-Control不为public问题的解决方法

(编辑:jimmy 日期: 2024/12/25 浏览:3 次 )

IIS中User-mode caching引起的Cache-Control不为public问题的解决方法


web.config中对应的配置如下:

复制代码 代码如下:
<configuration>
    <system.webServer>
        <caching>
            <profiles>
                <add extension=".css" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="00:00:30" />
                <add extension=".js" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="00:00:30" />
            </profiles>
        </caching>
    </system.webServer>
</configuration>

浏览器中看到的效果:

IIS中User-mode caching引起的Cache-Control不为public问题的解决方法

解决方法:

1、禁用User-mode caching,只用Kernel-mode caching。

IIS中User-mode caching引起的Cache-Control不为public问题的解决方法

2、在web.config中加上cacheControlCustom="public"

复制代码 代码如下:
<configuration>
    <system.webServer>
        <staticContent>
            <clientCache cacheControlCustom="public" cacheControlMode="UseMaxAge" cacheControlMaxAge="300.00:00:00" />
        </staticContent>       
        <caching>
            <profiles>
                <add extension=".css" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="30:00:30" />
                <add extension=".js" policy="DontCache" kernelCachePolicy="CacheUntilChange" duration="30:00:30" />
            </profiles>
        </caching>
    </system.webServer>
</configuration>

上一篇:UBUNTU手动安装JDK的详细步骤
下一篇:linux网络参数配置方法详解