0

在 IIS 7.5 中,您可以添加静态 HTTP 响应标头,但我想添加一个“过期”标头,该标头始终指定未来 7 天的日期。

我正在运行 php 5.4,所以我想要一个可以通过编辑 web.config 文件而不是一些 c# 代码解决方案来做到这一点的解决方案。

我知道如何使用 php 添加标头,但这对静态图像文件的 http 标头(jpg、gif、png 等)没有帮助。

标头应如下所示:

到期:2012 年 5 月 31 日星期四 10:59:25 GMT

如何使它动态地始终显示未来 7 天的日期和时间?

编辑:

请注意,我的 php 文件中有我想要的 expires 标头:

http://web-sniffer.net/?url=http%3A%2F%2Fwww.bestds.com

但是,我无法为 png 文件上的“Expires”键指定提前 7 天的日期(例如),我不得不在很远的将来使用静态日期:

http://web-sniffer.net/?url=http%3A%2F%2Fwww.bestds.com%2Fimage%2Ftlogo.png

4

2 回答 2

6

这是 IIS 的标准功能。HTTP 响应标头模块允许您设置此公共标头。这会产生以下 web.config:

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

您应该只在您希望发送此标头的目录中执行此操作。通常只有具有静态内容的目录。

于 2012-05-31T12:04:40.057 回答
0

您只能使用程序代码添加动态过期标头。

来源: Microsoft IIS 站点

您应该改用 Cache-Control max-age ,就像其他答案中建议的那样。

于 2013-08-16T09:26:55.043 回答