2016-11-09 20 views
3

我很清楚自己如何設置它,但我擔心它在兩個不同的位置進行配置。要獲得賞金,請告訴我在哪裏尋找現有的設置。我的最大年齡標題從哪裏來?

地方,我們已經看過了現有設置,但沒有成功:

  • web.config中<StaticContent>部分
  • IIS輸出緩存部分,在所有三個層次:
    • 網站
    • 應用程序
  • 代碼(我做了SetMaxAge全局搜索)

語境

最近,我們注意到我們的CSS和JS文件沒有得到刷新。當我檢查網絡流量時,他們將從服務器返回一個標題(Cache-Control: max-age=604800),使它們有七天的使用期限。

我們需要減少高速緩存的使用壽命。但是對於我的生活,我無法找到它的位置。

這是不是設置在web.config <StaticContent>部分。

這是組在IIS輸出緩存部分(我看了看機器,下網站,以及application--他們都是空白)。

這是不是設置代碼 - 我做了一個全局代碼搜索SetMaxAge並得到nuthin'。 我可以在哪裏看?

它是否可能由我們的數據中心中的網關或負載均衡器設置?

+0

爲max age添加新設置將覆蓋現有的設置,或者提供重複的標題。無論哪種方式,它可能會告訴你很多關於它的設置。 – jpaugh

+0

順便說一句,因爲唯一的答案呃對你的問題感到困惑,所以我首先提出了主要問題。我希望能有一個全面的答案,我自己。 – jpaugh

+1

非常感謝...我從來沒有得到答案,我們做了一個解決方法。但我仍然想知道,所以我加了一個賞金。 –

回答

2

你可以這樣做在網絡配置,或者您可以使用IIS ui更改(見下面的鏈接):

<configuration> 
    <system.webServer> 
    <staticContent> 
     <clientCache cacheControlMode="UseMaxAge" 
     cacheControlMaxAge="1.00:00:00" /> <!-- 1 day --> 
    </staticContent> 
    </system.webServer> 
</configuration> 

查看更多在這裏:https://www.iis.net/configreference/system.webserver/staticcontent/clientcache

IIS文檔指出默認值是1天。

這裏有一些其他的方式可能有什麼影響這些設置:在的applicationHost.config http://www.galcho.com/blog/post/2008/02/27/IIS7-How-to-set-cache-control-for-static-content.aspx

  • overrideModeDefault值
  • 早期Appcmd.exe的設置
  • 或客戶端的設置也可以覆蓋你的價值觀。
+0

我不確定像這樣添加它是最好的想法,當我不知道頭是從哪裏來的。 7天不是默認。如果我在這裏添加它,我不能確定它不會被任何目前正在使用的機制覆蓋。 –

+0

你在哪裏以及如何查看標題? – DDan

+0

Chrome控制檯,網絡選項卡 –