2012-07-30 108 views
2

有人告诉我有这样的可缓存响应认证

<meta http-equiv='pragma' content='no-cache'> 
<meta http-equiv='cache-control' content='no-store'> 

我不知道这是否是必需的或没有。我使用.net 4,IIS 7.5和mvc应用程序。 该网站有一些安全区域来查看敏感内容。我相信这对于.net项目来说不是必需的。

如果我错了,请纠正我。

回答

0

在IIS中默认情况下都不添加。如果您不希望(行为良好的)客户端缓存页面的内容,则需要这些服务器标头(或与meta http等效)。

更多关于在HTTP缓存,Header Field Definitions & Caching in HTTP

在我看来,更好的方法是为这里将它们设置为HTTP头,How do I add site-wide no-cache headers to an MVC 3 app

+0

如果我不想在仅需认证的页面上缓存,那么该怎么办? – Tun 2012-07-30 12:51:01

+0

取决于你如何做,MVC有许多扩展方法,允许你修改它们中的服务器头字段。 – 2012-07-30 13:16:13

0

这些标签试图告诉浏览器不要缓存你的页面。 这通常是不需要的,但是在Ajax页面(作为头部)使用,以防止浏览器缓存响应。

您通常会添加一个Expires标头以防止缓存。

+0

但也有人说,经过认证的内容数据可以由本地缓存用户的浏览器作为应用程序设置的缓存控制指令是'私人'。仍然困惑这是否正确。 – Tun 2012-07-30 10:45:42