轉載 IIS設置瀏覽器緩存模式

IIS中User-mode caching引發的Cache-Control不爲public問題的解決方法

轉載  更新時間:2013年11月22日 16:06:34   做者:    我要評論css

 
在IIS的Output caching中若是啓用了User-mode caching將引發Cache-Control爲no-cache,從而形成頁面不能被瀏覽器或代理服務器緩存,下面看解決方法
 




web.config中對應的配置以下:web

 

複製代碼代碼以下:

<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>

 

瀏覽器中看到的效果:

瀏覽器

解決方法:緩存

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

服務器

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

 

複製代碼代碼以下:
<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>
相關文章
相關標籤/搜索