小编mof*_*fee的帖子

IIS7.5 max-age问题(asp.net mvc输出缓存)

我们使用Windows server 2008 R2 Enterprise和IIS7.5.7600.16385,并在服务器上部署了一个简单的Web(asp.net mvc,c#,.net framework 4.5.1).像下面这样的控制器,*.cshtml只输出一个日期时间:

public class DetailController : Controller
{
    [OutputCache(Duration = 300, VaryByParam = "id")]
    public ActionResult Index(int id)
    {
        return View();
    }
}
Run Code Online (Sandbox Code Playgroud)

当我第一次请求URL http:// localhost:80/Detail/Index?id = 3时,响应是正确的:

Cache-Control:public, max-age=300
Date:Mon, 24 Oct 2016 12:11:59 GMT
Expires:Mon, 24 Oct 2016 12:16:51 GMT
Last-Modified:Mon, 24 Oct 2016 12:11:51 GMT
Run Code Online (Sandbox Code Playgroud)

但是,当我再次请求url(ctrl + f5)时,max-age不正确(然后响应来自服务器缓存):

Cache-Control:public, max-age=63612908450
Date:Mon, 24 Oct 2016 12:16:34 GMT
Expires:Mon, 24 Oct 2016 12:20:50 GMT
Last-Modified:Mon, 24 Oct 2016 12:15:50 GMT
Run Code Online (Sandbox Code Playgroud)

我不知道为什么max-age这么大,以及它是如何生成的,它会在输出缓存过期时重新转换(ctrl + …

asp.net-mvc outputcache

6
推荐指数
1
解决办法
817
查看次数

标签 统计

asp.net-mvc ×1

outputcache ×1