我不想为我的项目中的所有html文件设置缓存头。我知道如何针对特定文件执行此操作:
<location path="index.html">
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="Cache-Control" value="no-cache, no-store, must-revalidate" />
<add name="Pragma" value="no-cache" />
<add name="Expires" value="0" />
</customHeaders>
</httpProtocol>
</system.webServer>
</location>
但是如何像通配符一样使用它来定位所有html文件?
答案 0 :(得分:0)
恐怕通配符不是一个选择。
您可能需要考虑从Startup.cs进行设置:
app.Use((context, next) =>
{
context.Response.Headers[HeaderNames.CacheControl] = "no-cache, no-store, must-revalidate";
context.Response.Headers[HeaderNames.Expires] = "0";
context.Response.Headers[HeaderNames.Pragma] = "no-cache";
return next();
});
这是ASP.Net核心v3示例,有关您可以想象的任何环境的更多详细信息和示例,请参阅以下金星答复:How do we control web page caching, across all browsers?