我已将最大使用期限设置为 1 分钟,但当我查看响应标头时,我看到 max-age=86400(一天)。是否有其他内容覆盖此设置?我还将大多数 MIME 类型的内核缓存设置为 1 分钟,以确保这不是源。我还应该在其他地方寻找覆盖?另一个 webconfig 设置?
这是 webconfig 的相关部分。
<system.webServer>
<urlCompression doDynamicCompression="true" doStaticCompression="true" dynamicCompressionBeforeCache="true" />
<caching enabled="true">
<profiles>
<add extension=".gif" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
<add extension=".png" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
<add extension=".js" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
<add extension=".css" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
<add extension=".jpg" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
<add extension=".jpeg" policy="CacheUntilChange" kernelCachePolicy="CacheUntilChange" duration="0.00:01:00" location="Any" />
</profiles>
</caching>
<staticContent>
<!--Enable gzipping JS by changing the mime type.-->
<remove fileExtension=".js" />
<mimeMap fileExtension=".js" mimeType="text/javascript" />
<!-- d.hh:mm:ss -->
<clientCache cacheControlMode="UseMaxAge" httpExpires="0.00:01:00" />
答案1
应该使用
cacheControlMaxAge="0.00:01:00"
代替
httpExpires="0.00:01:00"
但后者不会引发错误,只是不起作用。
答案2
只是为了让我们清楚应该如何
<staticContent>
<clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="0.00:01:00" />
</staticContent>