【问题标题】:Client Not loading Fresh content in IIS 7.5客户端未在 IIS 7.5 中加载新鲜内容
【发布时间】:2012-07-05 12:38:46
【问题描述】:

我们在 Windows Server 2008 R2 机器上的 IIS 7.5 上托管了 asp.net 4.0 网站。问题是客户端正在获取旧内容,但服务器已更新副本。客户端需要每次按 Ctrl+F5 才能获取最新内容。即使在网格上更新数据的情况下,客户端仍然会获得 IFRAME 中显示的旧数据。

可能是什么原因?任何的想法??这是缓存的问题吗??

任何形式的帮助将不胜感激..

【问题讨论】:

    标签: asp.net caching iframe iis-7.5


    【解决方案1】:

    页面输出缓存在浏览器请求后将动态页面(例如 ASP 页面或 ASP.NET 页面)的响应存储在内存中。当后续请求到达页面时,服务器发送缓存的响应而不是重新处理页面。

    查看这篇文章,它可能对你有帮助。

    http://www.iis.net/ConfigReference/system.webServer/caching

    这些链接也将帮助您

    http://learn.iis.net/page.aspx/710/configure-iis-7-output-caching/

    https://serverfault.com/questions/126914/output-caching-with-iis7-how-to-for-an-dynamic-aspx-page

    IIS7: set "no-cache" for all aspx pages but not images/css/js

    https://superuser.com/questions/63014/how-do-i-turn-off-caching-in-iis7

    【讨论】:

      【解决方案2】:

      在我的情况下,我使用 Chrome 开发工具查看托管在 IIS 上的 Html 文件的源代码,当我修改 html 文件并刷新 IIS 站点时,刷新浏览器后,chrome 中显示的源代码没有被修改。

      一开始我猜是 IIS 缓存,但在我尝试其他答案中的链接后,它并没有真正起作用:https://superuser.com/questions/63014/how-do-i-turn-off-caching-in-iis7

      最后我去Chrome设置并清除Chrome文件缓存,html源代码成功更改。所以在我的情况下,它是由 Chrome 的缓存引起的,希望它对某人有所帮助。

      【讨论】:

        【解决方案3】:

        这是我发现的,有一个 HTTPCompression 设置可能将 sendCacheHeading 设置为 true。 我在 applicationHost.config 文件中找到了它并在那里进行了更改,但也可以使用配置编辑器在 IIS 中进行更改。

        例子:

        如果您想通过 IIS 更改此设置,请选择配置编辑器,然后单击顶部的下拉箭头并展开 system.webserver,然后选择 httpCompression。

        根据 Laurenz 的要求,我复制了我在配置文件中找到的文本版本以及我将其更改为的内容:

        原文:

        更改为:

        【讨论】:

        • 使用可以复制粘贴的文本比使用图像更好。
        猜你喜欢
        • 1970-01-01
        • 2012-09-01
        • 1970-01-01
        • 2018-06-06
        • 1970-01-01
        • 2011-02-06
        • 1970-01-01
        • 2011-12-07
        • 2014-08-04
        相关资源
        最近更新 更多