ASP.NET MONO MVC4应用程序在带有mod_mono的apache中运行 页面应仅缓存在浏览器或代理服务器中以节省服务器内存。
浏览器使用标题
从服务器获取产品列表Request URL:http://example.com/store/Store/Category/ANDRORI?root=1&open=True&total=2.76
Request Method:GET
Status Code:200 OK
Remote Address:1.2.3.4:80
服务器返回带有标题的产品列表页面:
HTTP/1.1 200 OK
Date: Wed, 06 Jan 2016 16:52:47 GMT
Server: Apache/2.2.22 (Debian)
X-AspNet-Version: 4.0.30319
Cache-Control: private
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 8668
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8
Chrome开发者工具页面审核写了关于此页面的警告
The following resources are explicitly non-cacheable. Consider making them cacheable if possible:
每次都阅读此页面。响应包含
Cache-Control: private
所以页面必须我在浏览器中缓存。 如何解决这个问题,以便页面可以缓存在客户端?
我尝试添加控制器
[OutputCache(Location = System.Web.UI.OutputCacheLocation.Client, Duration = 20 * 60)]
但在这种情况下,页面将缓存在服务器中,并忽略查询字符串参数。 对于所有查询字符串参数,从服务器发送相同的页面。