首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >.NET OutputCache指令无效

.NET OutputCache指令无效
EN

Stack Overflow用户
提问于 2015-04-20 15:05:24
回答 2查看 4.6K关注 0票数 5

我遇到了一些奇怪的缓存问题,并将一个非常简单的.NET页面与一个输出缓存指令放在一起。但是,页面没有缓存(每次刷新时内容更新)。

我在我的本地机器(Windows 7)上安装了一个简单的、最小的CMS站点(Ektronv.9.0 SP2)。在这个网站项目中,我创建了一个简单的页面来测试输出缓存。以下是页面代码:

代码语言:javascript
复制
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="CacheTest.aspx.cs" Inherits="CacheTest" %>
<%@ OutputCache Duration="3600" Location="Server" VaryByParam="None" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Cache Test</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        <p><%= DateTime.Now.ToString() %></p>
    </div>
    </form>
</body>
</html>

此页面根本不缓存。

在我们的生产站点上,OutputCache通常也不工作,除了在一个测试页面上配置与上面的完全相同。我不明白为什么这个页面是不同的,并且是唯一在dev服务器上工作的页面,但是当复制到我的本地主机上运行的站点时,它就不再工作了。

我确实注意到,在我们的生产站点上,使用母版页似乎使输出缓存无法工作,尽管在这个本地主机站点中,我没有使用母版页,而且它仍然不工作。

我应该从哪里开始寻找这个问题的疑难解答?我查看了IIS设置,找不到任何明显的设置来打开/关闭页面级缓存。我也搜索了大量的网络,似乎找不到其他与这个问题有关的人。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-21 12:08:05

Microsoft已经禁用了包含cookie的页面的输出缓存,以防止一个用户获得为另一个用户提供的缓存版本的页面。

有一个从输出中删除cookie的解决方案。请参阅https://support.episerver.com/hc/en-us/articles/115004119986-Output-Caching-Broken

作为另一种选择,您还可以通过缓存用户控件来使用部分页面缓存。

票数 5
EN

Stack Overflow用户

发布于 2015-04-21 02:24:55

在定义中添加CacheProfile属性,

代码语言:javascript
复制
<%@ OutputCache CacheProfile="CacheOneHour" Duration="3600" Location="Server" VaryByParam="none" %>

在Web.config文件中声明缓存配置文件。(在system.web中,放置声明):

代码语言:javascript
复制
  <system.web>
    <caching>
      <outputCacheSettings>
        <outputCacheProfiles>
          <add name="CacheOneHour"
               duration="3600"
               location="Server"
               varyByParam="none" />
        </outputCacheProfiles>
      </outputCacheSettings>
    </caching>
  </system.web>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29751570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档