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

 2022-11-09    267  

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>

浏览器中看到的效果:

解决方法:

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

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>

以上所述是小编给大家介绍的IIS中User-mode caching引起的Cache-Control不为public问题的解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持! 如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://77isp.com/post/12643.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。