【问题标题】:c# Cache Control in code or IIS 6c# 代码或 IIS 6 中的缓存控制
【发布时间】:2010-12-13 17:31:01
【问题描述】:

当通过移动 3G 网络查看我的一个网站时,在这种情况下,网络运营商 o2 正在重写页面并嵌入所有样式,这会导致页面中断。由于样式规则没有正确遵循。

现在我从 o2 的人那里了解到,我可以通过在我的网站上添加一个“无转换”的缓存控制标题来阻止这种情况的发生。

问题是通过 IIS 添加它并不能做任何事情。并且您不能通过 .net 中的代码添加缓存控件“无转换”,因为它不是 system.Web.HttpCacheability 选项之一。

知道如何获取此标头并阻止移动运营商篡改页面。

【问题讨论】:

    标签: c# iis http-headers 3g http-caching


    【解决方案1】:

    Page_Load 中的Response.Cache.SetNoTransforms

    【讨论】:

      【解决方案2】:

      您应该可以使用Response.AddHeader 方法,如下所示:

      Response.AddHeader("cache-control", "no-transform");
      

      用 Firebug 验证过,看起来没问题。

      【讨论】:

      • 伟大的作品完美,仍然不确定为什么将其添加到 IIS 标头被忽略,但没关系。
      【解决方案3】:

      或者,您可以在 HTML 中添加元元素,如下所示:

      <meta http-equiv="Cache-Control" content="no-transform" />
      

      【讨论】:

      • 应该可以,但是对于像 o2 这样的一些网络运营商,他们只是忽略它,我们会重写您的 HTML,除非它在标头请求中。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-01-20
      • 2011-09-30
      • 1970-01-01
      • 1970-01-01
      • 2011-05-19
      • 2010-10-26
      • 2017-07-21
      相关资源
      最近更新 更多