我有一個在VS10 Dev服務器下運行的ASP.NET網站。我希望某些靜態內容文件可以用最長時間的緩存指令提供,但似乎無法使其工作。ASP.NET靜態內容配置選項不起作用
我有這個在我的web.config:
<system.webServer>
<caching enabled="true" enableKernelCache="true">
</caching>
<httpProtocol>
<customHeaders>
<remove name="X-Powered-By" />
</customHeaders>
</httpProtocol>
<validation validateIntegratedModeConfiguration="false"/>
<modules runAllManagedModulesForAllRequests="true"/>
而且在內容文件夾中緩存
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<staticContent>
<clientCache cacheControlMode="UseMaxAge"
cacheControlMaxAge="30.00:00:00" />
</staticContent>
</system.webServer>
</configuration>
但它也不管用,它總是與服務Cache-Control:private
那麼,是否支持staticContent配置?如果沒有,任何解決方法?如果是這樣,我錯過了什麼?
頁眉我在所有的請求得到:
Server: ASP.NET Development Server/10.0.0.0
Date: Thu, 23 Feb 2012 20:47:56 GMT
Cache-Control: private
Content-Type: application/octet-stream
Content-Length: 1043
Connection: Close
您是否在web.config中有
2012-02-23 22:59:40
你看過這個嗎? http://www.iis.net/ConfigReference/system.webServer/staticContent/clientCache – Aristos 2012-02-23 23:07:47
也許你在你的程序中的其他地方設置標題(例如global.asax) – Aristos 2012-02-23 23:09:31