尝试以编程方式使 HTTP 响应标头过期



我们的团队正在使用 Silverlight 模块构建一个 C# 项目。我们使用 IIS 7 部署到 Windows 2008。我正在尝试以编程方式使与名为 ClientBin 的文件夹关联的 HTTP 响应标头过期。我知道如何通过 IIS 管理器手动执行此操作。(基本上,我转到感兴趣的文件夹或文件的HTTP响应标头部分,然后使用"设置公共标头..."以立即过期。但是,我们将多次重新部署到 IIS,我希望确保以编程方式完成它,因为一直保持重新配置是一个令人头疼的问题。

我应该从项目的 C# 代码中执行此操作,还是使用 WMI 脚本执行此操作是更好的做法?

@kev和@jeff-cuscutis提供了使用 ASP.NET 应用程序的web.config文件中的XML配置配置HTTP响应标头过期的方法

如何在IIS7中为每个文件夹和扩展名配置静态内容缓存?

OU 可以在根 web.config 中为整个文件夹设置特定的缓存标头:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- Note the use of the 'location' tag to specify which 
   folder this applies to-->
<location path="images">
<system.webServer>
  <staticContent>
    <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="00:00:15" />
  </staticContent>
</system.webServer>
</location>
</configuration>

或者,您可以在内容文件夹的 web.config 文件中指定这些内容:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<staticContent>
  <clientCache cacheControlMode="UseMaxAge" cacheControlMaxAge="00:00:15" />
</staticContent>
</system.webServer>
</configuration>

我不知道针对特定文件类型的内置机制。

您可以基于每个文件执行此操作。使用 path 属性包含文件名

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<location path="YourFileNameHere.xml">
    <system.webServer>
        <staticContent>
            <clientCache cacheControlMode="DisableCache" />
        </staticContent>
    </system.webServer>
</location>
</configuration>

相关内容

  • 没有找到相关文章

最新更新