我们使用MVC4和Jquery Mobile开发Web应用程序。我们的要求是缓存所有图像,jquery,css。所以我在下面的代码中工作就像魅力一样。
<staticContent>
<clientCache cacheControlMaxAge ="2.00:00:00" cacheControlMode="UseMaxAge" />
</staticContent>
在我的视觉工作室中,它的工作很棒。我能够捕获所有图像,脚本。
但是当我在IIS8中部署缓存无法正常工作时。我尝试了很多,但没有运气。请指导我。为什么在IIS中部署缓存不起作用。
Iam使用IIS8.我注意到的一件事是,如果我通过单击已部署的网站从IIS浏览,它将缓存所有内容。但如果输入的网址如10.111.151.88:8002未在浏览器中缓存。
答案 0 :(得分:2)
Atlast我找到了回答的人。问题是我在global.asax中的代码下面
protected void Application_BeginRequest()
{
Response.Cache.SetCacheability(HttpCacheability.NoCache);
Response.Cache.SetExpires(DateTime.UtcNow.AddHours(-1));
Response.Cache.SetNoStore();
}
删除我的所有缓存并使浏览器不缓存任何内容。
答案 1 :(得分:1)
您几乎没有添加有关IIS配置的信息。以下指南可能有助于找到您缺少的配置:Configure IIS Client Cache < clientCache >
我猜您在设置公共HTTP响应标头中遗漏了一些内容。
答案 2 :(得分:1)
IIS8中是否启用了静态和动态压缩?